egeatech / laravel-models
A package to better handle database operations via Eloquent Models.
Installs: 3 680
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 5
Forks: 0
Open Issues: 0
Requires
- php: ^8.0
- egeatech/laravel-requests: ^3.0
- illuminate/support: ^6|^7|^8|^9|^10
- spatie/laravel-json-api-paginate: ^1.10
- spatie/laravel-query-builder: ^5.0
Requires (Dev)
- orchestra/testbench: ~5|~6|~7|~8
- phpunit/phpunit: ~9.0
README
A package to help handling Model CRUD operations.
Installation
This package now supports only Laravel 9, therefore requiring at least PHP 8.0. Support for PHP 7.4 is valid up to package version 2.3.3.
Via Composer
$ composer require egeatech/laravel-models
Usage
This package exposes an interface to manipulate database data, by using an implementation of the repository data pattern.
We provide both an interface and an abstract implementation to be extended.
To develop APIs, the abstract class references Spatie Query Builder library
for the find
and index
methods (for more details take a look at the source code).
To identify primary keys of eloquent Model classes, we also developed an IdentifierInterface
(with an abstract class
to be extended for specific needs) which is used by the BaseRepository
when dealing with specific entity operations,
such as update, delete or find.
At the moment we only support int
or string
PKs, composite keys support is not in the plan.
Change log
Please see the CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email author email instead of using the issue tracker.
Credits
License
The software is licensed under MIT. Please see the LICENSE file for more information.