zhetenov / repository
创建仓库的简单方式
dev-master
2020-01-06 07:04 UTC
This package is not auto-updated.
Last update: 2024-09-24 08:29:39 UTC
README
本软件包为您提供使用命令创建laravel仓库的简单方法。
安装
在您的终端
composer require zhetenov/repository
使用
通过使用此命令,您可以轻松创建仓库
php artisan make:repository User
您将看到有一个名为“Repositories”的文件夹,在这个文件夹中有一个“User”文件夹,它包含2个文件:UserRepository 和 User interface
$ tree -a app app ├── Console ├── Exceptions ├── Http ├── Providers ├── Repositories │ └── User │ ├── UserInterface.php │ └── UserRepository.php └── User.php
仓库
首先,我们需要在 getModelClass
方法中返回模型路径。然后,您可以开始使用仓库模式。例如,要获取所有用户,我们创建了 getAll
方法。首先,我们调用 startConditions 方法,它返回我们的 User 模型的副本(QueryBuilder)。之后,我们可以编写自己的 QueryBuilder。
<?php namespace app\Repositories\User; use App\User; use Illuminate\Database\Eloquent\Collection; use Zhetenov\Repository\BaseRepository; class UserRepository extends BaseRepository implements UserInterface { /** * Returns current model. * * @return string */ protected function getModelClass(): string { return User::class; } /** * @return Collection */ public function getAll(): Collection { return $this ->startConditions() ->all(); } }