moova / optimus-genie
moova.io 为 esbenp 的分支:optimus/genie 包
Requires
- illuminate/database: >=4.0
- optimus/bruno: 7.0.2
Requires (Dev)
- mockery/mockery: 1.5.*
- php-coveralls/php-coveralls: 2.7.*
- phpunit/phpunit: ^9.0
This package is not auto-updated.
Last update: 2024-09-18 21:45:33 UTC
README
介绍
为 Eloquent 提供一个基础仓库类,包含覆盖大多数查询的便捷方法。有助于将您的持久层从业务代码中抽象出来。
献给 Genie
献给世界上最好的(也是唯一的)瓶中精灵。 恭喜您获得自由,我的朋友。
安装
对于 Laravel 6 及以上版本
composer require moova/optimus-genie dev-master
实现
以下示例将使用一个名为 User
的假设 Eloquent 模型。
<?php namespace App\Repositories; use App\Models\User; use Optimus\Genie\Repository; class UserRepository extends Repository { protected function getModel() { return new User; } }
选项
Genie 已经与 Optimus\Bruno 集成。有关更多信息,请参阅 Bruno 文档。所有获取方法的 $options
键采用以下格式
注意: 如果您使用 Bruno 的控制器,它将自动将请求的查询字符串解析成正确的格式。
API
以下示例将使用一个名为 User
的假设 Eloquent 模型。
get (array $options = [])
获取所有 User
行
getById ($id, array $options = [])
通过主键获取一个 User
getRecent (array $options = [])
按 created_at
降序获取 User
行
getRecentWhere (string $column, mixed $value, array $options = [])
获取 User
行,其中 $column=$value
,并按 created_at
降序排序
getWhere (string $column, mixed $value, array $options = [])
获取 User
行,其中 $column=$value
getWhereArray (array $clauses, array $options = [])
通过多个 where 子句获取 User
行(《$column1 => $value1, $column2 => $value2》)
getWhereIn (string $column, array $values, array $options = [])
获取 User
行,其中 $column
可以是 $values
中给出的任何值
getLatest (array $options = [])
获取最新的 User
getLatestWhere (string $column, mixed $value, array $options = [])
获取最新的 User
,其中 $column=$value
delete ($id)
通过主键删除 User
行
deleteWhere ($column, $value)
删除 User
行,其中 $column=$value
deleteWhereArray (array $clauses)
通过多个 where 子句删除 User
行(《$column1 => $value1, $column2 => $value2》)
标准
此包符合 PSR-1、PSR-2 和 PSR-4。如果您注意到合规性问题,请通过拉取请求发送补丁。
测试
$ phpunit
贡献
有关详细信息,请参阅 CONTRIBUTING。
许可协议
MIT 许可协议(MIT)。有关更多信息,请参阅 许可文件。