Download the PHP package staudenmeir/eloquent-eager-limit without Composer
On this page you can find all versions of the php package staudenmeir/eloquent-eager-limit. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download staudenmeir/eloquent-eager-limit
More information about staudenmeir/eloquent-eager-limit
Files in staudenmeir/eloquent-eager-limit
Package eloquent-eager-limit
Short Description Laravel Eloquent eager loading with limit
License MIT
Informations about the package eloquent-eager-limit
Eloquent Eager Limit
[!IMPORTANT] The package's code has been merged into Laravel 11+ and eager loading limits are now supported natively.
This Laravel Eloquent extension allows limiting the number of eager loading results per parent using window functions.
Supports Laravel 5.5–10.
Compatibility
- MySQL 5.7+
- MySQL 5.5~5.6: Due to a bug in MySQL, the package only works with strict mode disabled.
In yourconfig/database.php
file, set'strict' => false,
for the MySQL connection. - MariaDB 10.2+
- PostgreSQL 9.3+
- SQLite 3.25+: The limit is ignored on older versions of SQLite. This way, your application tests still work.
- SQL Server 2008+
Installation
composer require staudenmeir/eloquent-eager-limit:"^1.0"
Use this command if you are in PowerShell on Windows (e.g. in VS Code):
composer require staudenmeir/eloquent-eager-limit:"^^^^1.0"
Versions
Laravel | Package |
---|---|
10.x | 1.8 |
9.x | 1.7 |
8.x | 1.6 |
7.x | 1.5 |
6.x | 1.4 |
5.8 | 1.3 |
5.5–5.7 | 1.2 |
Usage
Use the HasEagerLimit
trait in both the parent and the related model and apply limit()/take()
to your relationship:
Improve the performance of HasOne
/HasOneThrough
/MorphOne
relationships by applying limit(1)
:
You can also apply offset()/skip()
to your relationship:
Package Conflicts
staudenmeir/laravel-adjacency-list
: Replace both packages with staudenmeir/eloquent-eager-limit-x-laravel-adjacency-list to use them on the same model.staudenmeir/laravel-cte
: Replace both packages with staudenmeir/eloquent-eager-limit-x-laravel-cte to use them on the same model.topclaudy/compoships
: Replace both packages with mpyw/compoships-eager-limit to use them on the same model.
Contributing
Please see CODE OF CONDUCT for details.