PHPackages                             zhaohehe/zrepository - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. zhaohehe/zrepository

ActiveLibrary[Database &amp; ORM](/categories/database)

zhaohehe/zrepository
====================

Laravel Repositories

v1.3.0(8y ago)89530MITPHP &gt;=5.5.9

Since Dec 22Compare

[ Source](https://github.com/zhaohehe/z-repository)[ Packagist](https://packagist.org/packages/zhaohehe/zrepository)[ RSS](/packages/zhaohehe-zrepository/feed)WikiDiscussions Synced today

READMEChangelogDependencies (7)Versions (14)Used By (0)

z-repository
============

[](#z-repository)

> z-repository是一个为laravel5提供的数据库抽象层，目的是为了将应用的数据库操作和核心的业务逻辑分离开，保证controller的精致。

简介
--

[](#简介)

> z-repository提供了criteria和transformer来接管数据库的查询和查询结果的展示，使得各部分分离开来，解开耦合。同时repository接管model层，使得model层专注于数据模型本身的定义，比如relationship，fillable等

安装
--

[](#安装)

在终端中输入以下命令，通过composer来安装

```
composer require "zhaohehe/zrepository"

php artisan package:discover
```

使用
--

[](#使用)

### repository

[](#repository)

首先，创建你的repository类，你可以在命令行中使用如下命令自动生成该类

```
php artisan make:repository Poem --model Poem
```

其中，--model Poem 是可选的，用来指定repository中model的名称，默认情况下，会根据repository的名称自动产生model名，你可以在repository.php配置文件中设置该类的命名空间等，后面的criteria和transforme的自动生成也是这样，生成的文件如下：

```
