brainlabsweb/repository-generator

用于仓库模式的实用小包

v1.0.1 2020-04-21 06:41 UTC

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
}

开发者:[Mahesh](https://brainlabsweb.com)(不跟踪、不索引、外部、用户生成内容)