diff --git a/src/Services/QueryBuilder/Filters/RhsColonSyntax.php b/src/Services/QueryBuilder/Filters/RhsColonSyntax.php index 9538e54..2ca7a5b 100644 --- a/src/Services/QueryBuilder/Filters/RhsColonSyntax.php +++ b/src/Services/QueryBuilder/Filters/RhsColonSyntax.php @@ -110,6 +110,8 @@ protected function isOperatorAllowed(string $operator, array $allowedOperators, */ protected function applyFilter(Builder $query, string $column, string $operator, string $value) { + $column = $query->getModel()->qualifyColumn($column); + // Do some final preparations of the value if(in_array($operator, ['in', 'nin'])) { $value = explode(',', $value); @@ -137,4 +139,4 @@ protected function applyFilter(Builder $query, string $column, string $operator, $query->where($column, $this->operatorsMap[$operator], $value); } } -} \ No newline at end of file +} diff --git a/src/Services/QueryBuilder/QueryBuilder.php b/src/Services/QueryBuilder/QueryBuilder.php index a54fc07..5e65aea 100644 --- a/src/Services/QueryBuilder/QueryBuilder.php +++ b/src/Services/QueryBuilder/QueryBuilder.php @@ -14,7 +14,8 @@ public function allowedSorts($sorts) : BaseQueryBuilder if($sort instanceof AllowedSort) { return $sort; } - return AllowedSort::field(ltrim($sort, '-')); + $name = ltrim($sort, '-'); + return AllowedSort::field($name, $this->getModel()->qualifyColumn($name)); }); $this->ensureAllSortsExist(); $this->addRequestedSortsToQuery();