From d373c617a72038798771e824713a6f5357fd962e Mon Sep 17 00:00:00 2001 From: Dan Harrin Date: Mon, 3 Mar 2025 14:00:06 +0000 Subject: [PATCH] fix: Global search relationship ambiguous column --- packages/panels/src/Resources/Resource.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/panels/src/Resources/Resource.php b/packages/panels/src/Resources/Resource.php index 250993ec274..e9a22b784ce 100644 --- a/packages/panels/src/Resources/Resource.php +++ b/packages/panels/src/Resources/Resource.php @@ -744,8 +744,6 @@ protected static function applyGlobalSearchAttributeConstraints(Builder $query, */ protected static function applyGlobalSearchAttributeConstraint(Builder $query, string $search, array $searchAttributes, bool &$isFirst): Builder { - $model = $query->getModel(); - $isForcedCaseInsensitive = static::isGlobalSearchForcedCaseInsensitive(); /** @var Connection $databaseConnection */ @@ -757,11 +755,13 @@ protected static function applyGlobalSearchAttributeConstraint(Builder $query, s $query->when( str($searchAttribute)->contains('.'), function (Builder $query) use ($databaseConnection, $isForcedCaseInsensitive, $searchAttribute, $search, $whereClause): Builder { - return $query->{"{$whereClause}Relation"}( + return $query->{"{$whereClause}Has"}( (string) str($searchAttribute)->beforeLast('.'), - generate_search_column_expression((string) str($searchAttribute)->afterLast('.'), $isForcedCaseInsensitive, $databaseConnection), - 'like', - "%{$search}%", + fn (Builder $query) => $query->where( + generate_search_column_expression($query->qualifyColumn((string) str($searchAttribute)->afterLast('.')), $isForcedCaseInsensitive, $databaseConnection), + 'like', + "%{$search}%", + ), ); }, fn (Builder $query) => $query->{$whereClause}(