create another

what i need help is bassilcy how to modify the search query for relationship select

i need where name is like search or where company name is like search
but am having so many probelms somehow fillament is injecting a new query
select * from `card_types` where `name` like '%%' or exists (select * from `card_providers` where `card_types`.`card_provider_id` = `card_providers`.`id` and `name` like '%%')
`

and when preload is on it wont use the modified query to get the results rather just does search on cleint side

           Forms\Components\Select::make('card_type_id')
                            ->label(__('inventory_batch.card_type'))
                            ->preload()
                            ->searchable()
                            ->relationship('cardType', 'name', function ($query, $search) {
                                return $query->where('name', 'like', "%{$search}%")
                                    ->with('cardProvider')
                                    ->orWhereHas('cardProvider', function ($query) use ($search) {
                                        $query->where('name', 'like', "%{$search}%");
                                    });
                            })
                            ->allowHtml()
                            ->getOptionLabelFromRecordUsing(
                                fn(CardType $record) => view('components.card-type-select-option', [
                                    'name' => $record->name,
                                    'providerName' => $record->cardProvider->name,
                                    'image' => $record->image_url,
                                ])->render()
                            )
                            ->helperText(__('inventory_batch.card_type_help'))
                            ->required()
                            ->live(),
Was this page helpful?