tuxboy/laravel-repository

允许您通过仓库类调用 Eloquent

dev-master 2017-12-16 20:09 UTC

This package is auto-updated.

Last update: 2024-09-24 05:01:03 UTC


README

安装

$ composer require tuxboy/laravel-repository

然后运行 composer updatecomposer install -o

然后向 config/app.php 中添加服务提供者

'providers' => [
    // ...
    \TuxBoy\Repository\RepositoryServiceProvider::class,
];

快速开始

在您的项目中,创建一个基于 BaseRepository 的 Repository 文件

namespace App\Repositories;

use App\Models\Ticket;
use TuxBoy\Repository\Repositories\BaseRepository;

class TicketRepository extends BaseRepository
{
    use Sortable;

    /**
     * @var Ticket
     */
    protected $model;

    /**
     * TicketRepository constructor.
     * @param Ticket $ticket
     */
    public function __construct(Ticket $ticket)
    {
        $this->model = $ticket;
    }
}    

因此,在您的控制器中,您可以通过 Laravel DI 使用它

namespace App\Http\Controllers;

use App\Repositories\TicketRepository;

class TicketsController extends Controller
{
    /**
     * @var TicketRepository
     */
    private $ticketRepository;

    public function __construct(TicketRepository $ticketRepository)
    {
        $this->ticketRepository = $ticketRepository;
    }
    
    // ...
}