indexzer0/eloquent-filtering
Define allowed filters on your Eloquent models and apply them from simple arrays or request data—no custom query logic. Supports complex, type-based filtering for APIs and dashboards on Laravel 10+ / PHP 8.2+.
Various exceptions are thrown by this package.
Many can be suppressed globally in the config file.
class InvalidFilterException
config("eloquent-filtering.suppress.filter.invalid");
// Filter does not have `type` key.
class MissingFilterException
config("eloquent-filtering.suppress.filter.missing");
// Can't find filter of `type` specified.
class MalformedFilterFormatException extends ValidationException
config("eloquent-filtering.suppress.filter.malformed_format");
// The filter was found, but the rest of the data does not match required format of the filter.
class DeniedFilterException
config("eloquent-filtering.suppress.filter.denied");
// Filter is not allowed.
class DuplicateFiltersException
// When you have registered a custom filter that has the same type as another filter.
class InvalidFiltersPayloadException extends InvalidArgumentException
// When filters are passed to ::filter() that are not list arrays.
class InvalidModelFqcnException extends InvalidArgumentException
// When an invalid model string is passed to `Filter::morphType()` or `Filter::morphRelation()->includeRelationFields()`.
class UnsupportedModifierException extends InvalidArgumentException
// When an invalid modifier is passed to ->withModifiers().
class RequiredFilterException extends ValidationException
// When required filter(s) were not applied.
How can I help you explore Laravel packages today?