gruz/genie

维护者

详细信息

github.com/gruz/genie

源代码

安装: 17

依赖: 0

建议: 0

安全: 0

星标: 0

关注者: 0

分支: 22

3.3.4 2021-08-21 20:06 UTC

This package is auto-updated.

Last update: 2024-09-22 02:52:10 UTC


README

Latest Version Software License Build Status Coverage Status Total Downloads

简介

一个Eloquent的基础仓库类,包含覆盖大多数查询的便利方法。有助于将持久化层从业务代码中抽象出来。

献给Genie

献给世界上最好的(也是唯一一个)瓶中精灵。 恭喜你获得自由,我的朋友

安装

对于Laravel 5.4及以上版本

composer require optimus/genie ~2.0

对于Laravel 5.3及以下版本

composer require optimus/genie ~1.0

实现

以下示例将使用一个假设的Eloquent模型名为User

<?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文档。所有get方法的$options键采用以下格式

注意:如果您使用Bruno的控制器,它将自动将请求的查询字符串解析为正确的格式。

API

以下示例将使用一个假设的Eloquent模型名为User

get (array $options = [])

获取所有User

getById ($id, array $options = [])

通过主键获取一个User

getRecent (array $options = [])

获取按created_at降序排列的User

getRecentWhere (string $column, mixed $value, array $options = [])

获取满足$column=$valueUser行,按created_at降序排列

getWhere (string $column, mixed $value, array $options = [])

获取满足$column=$valueUser

getWhereArray (array $clauses, array $options = [])

通过多个where子句([$column1 => $value1, $column2 => $value2])获取User

getWhereIn (string $column, array $values, array $options = [])

获取$column可以是$values中给定任何值的User

getLatest (array $options = [])

获取最新的User

getLatestWhere (string $column, mixed $value, array $options = [])

获取满足$column=$value的最新的User

delete ($id)

通过主键删除User

deleteWhere ($column, $value)

删除满足$column=$valueUser

deleteWhereArray (array $clauses)

通过多个where子句([$column1 => $value1, $column2 => $value2])删除User

标准

此包符合PSR-1PSR-2PSR-4。如果您发现符合标准的疏忽,请通过pull request发送补丁。

测试

$ phpunit

贡献

有关详细信息,请参阅CONTRIBUTING

许可

MIT许可证(MIT)。有关更多信息,请参阅许可文件