composer require jwohlfert23/laravel-api-query
This package is implemented as a trait, which provides the buildFromRequest
scope.
use Jwohlfert23\LaravelApiQuery\BuildQueryFromRequest;
class Post {
use BuildQueryFromRequest;
}
Post::buildFromRequest()->get();
is the same as:
Post::orderByDesc('id')->orderBy('name');
is the same as:
Post::where('name', 'Bobby')->whereHas('author', function($q) {
$q->where('name', 'like', '%Bob%');
});
Note: this package doesn't use "whereHas", but rather performs left joins internally. However, the results should be the same as the above code.
Filters default to using the "equal" operator. These are the operators available to use in filtering (contains is use above).
- eq (=)
- gt (>)
- gte (>=)
- lt (<)
- lte (<=)
- contains
is the same as
Post::with('author','comments');