Download the PHP package zatoday/repository without Composer
On this page you can find all versions of the php package zatoday/repository. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download zatoday/repository
More information about zatoday/repository
Files in zatoday/repository
Package repository
Short Description package repository for laravel, all function eloquent, Eager Loading and upgrade make model
License MIT
Homepage https://zatoday.com
Informations about the package repository
ZAToday Repository
ZAToday Repository is a package for Laravel 5.5 which is used to abstract the database layer. This makes applications much easier to maintain.
Feature
- [x] all($columns = array('*'))
- [x] lists($value, $key = null)
- [x] paginate($perPage = 1, $columns = array('*'));
- [x] create(array $data)
- [x] update(array $data, $id, $attribute = "id") // if you use mongodb then you'll need to specify primary key $attribute
- [x] delete($id)
- [x] find($id, $columns = array('*'))
- [x] findBy($field, $value, $columns = array('*'))
- [x] findAllBy($field, $value, $columns = array('*'))
- [x] findWhere($where, $columns = array('*')) // Eager Loading
- [x] with($relations)
- [x] Custom
make:model
Installation
Run the following command from you terminal:
Usage
Create new file Repository
Example:
By implementing method you telling repository what model class you want to use. Now, create model:
And finally, use the repository in the controller:
Available Methods
The following methods are available:
ZAToday\Repository\Contracts\RepositoryInterface
ZAToday\Repository\Contracts\CriteriaInterface
Example usage
Create a new film in repository:
Update existing film:
Delete film:
Find film by film_id;
you can also chose what columns to fetch:
Get a single row by a single column criteria.
Or you can get all rows by a single column criteria.
Get all results by multiple fields
Criteria
Criteria is a simple way to apply specific condition, or set of conditions to the repository query. Your criteria class MUST extend the abstract class.
Create new file Criteria:
Example:
Here is a simple criteria:
Now, inside you controller class you call pushCriteria method:
or
Credits
This package is largely inspired by this great package by @Bosnadev.
All versions of repository with dependencies
illuminate/support Version ^5.5
illuminate/database Version ^5.5
illuminate/container Version ^5.5
illuminate/console Version ^5.5