brainlabsweb / repository-generator
用于仓库模式的实用小包
v1.0.1
2020-04-21 06:41 UTC
Requires
- php: ^7.2
- illuminate/console: ^6.0|^7.0
- illuminate/support: ^6.0|^7.0
This package is auto-updated.
Last update: 2024-09-21 20:15:53 UTC
README
安装
composer require brainlabsweb/repository-generator
生成仓库模式的命令
php artisan make:repository <名称>
可选参数
c
-> 生成控制器
m
-> 生成模型
示例
php artisan make:repository book m c
-- 在目录结构下创建以下文件
-- app
--Http
-- Controllers
-- BookController.php
-- Repository
-- Book
-- BookContract.php
-- BookRepository.php
-- Book.php
生成的控制器将如下
namespace App\Http\Controllers;
<?php
class BookController extends Controller {
/**
* @var BookContract
*/
private $bookContract;
/**
* BookController constructor
* BookContract $bookContract
*/
public function __construct(BookContract $bookContract)
{
$this->bookContract = $bookContract;
}
}
生成的仓库将如下
- 如果没有发送
m
标志,生成的仓库中不会有构造函数
<?php
namespace App\Repository\Book;
use App\Book;
class BookRepository implements BookContract
{
/**
* @var Book
*/
private $book;
/**
* BookRepository constructor.
* @param Book $book
*/
public function __construct(Book $book)
{
$this->book = $book;
}
// your code goes here
}
生成的接口将如下
<?php
namespace App\Repository\Book;
interface BookContract
{
// your code goes here
}
生成的模型将如下
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Book extends Model
{
// your code goes here
}