Download the PHP package chr15k/laravel-repository without Composer
On this page you can find all versions of the php package chr15k/laravel-repository. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download chr15k/laravel-repository
More information about chr15k/laravel-repository
Files in chr15k/laravel-repository
Package laravel-repository
Short Description Repository Layer design pattern for Laravel
License MIT
Homepage https://github.com/chr15k/laravel-repository
Informations about the package laravel-repository
Laravel Repository
Laravel Repository is a package for Laravel 5 / 6 / 7. It's used to abstract business logic into a repository layer with the aim of keeping your codebase clean and maintainable.
Install
You can install this package via composer:
If you are not running Laravel 5.5 (or higher), then add the service provider in config/app.php
:
Publish the configuration to customise the model and repo file paths.
Update config file to set the path to your models - default is app/Models
Setup
Step 1 Run the following command (set the name to match the name of the relating model):
This will create the following files inside app/Repositories
Step 2
Add the following to the register()
method of your app/Providers/AppServiceProvider.php
file:
Step 3 Simply inject the interface into your controller's constructor method, and Laravel will manage class dependencies:
Just add any custom methods to UserRepository.php
and UserRepositoryInterface.php
and you're good to go!
If any other controller needs to use the same complex query, it's now in a centralised location.
New implementations can just be swapped out in AppServiceProvider.php and nothing else needs to change.
Usage
The following methods are available to your repo by default. If you need to access a method not included here,
then you can just call the model()
method to fetch the model instance from the repo.
All of the fetch methods accept a related
array for eager loading relationships.
You can also fetch the latest error for the last operation by calling errors()
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-repository with dependencies
illuminate/support Version ^5.0|^6.0|^7.0|^8.0
illuminate/console Version ^5.0|^6.0|^7.0|^8.0
illuminate/database Version ^5.0|^6.0|^7.0|^8.0