Я искал этот ответ, но не нашел никакого, поэтому я здесь, чтобы спросить. Я использую Filment 3.2 на Laravel 12. У меня есть отношения ManageManager на основе табличного турнира_плеера , который имеет отношение к игрокам Table. Я должен показать и отфильтровать результаты Tournament_Players на основе пола столбца в игроках , которая имеет только 2 возможных значения: m и f . В столбцах я определил отношения, и все работает < /p>
Код: Выделить всё
Tables\Columns\TextColumn::make('player.sex')
->label(__('Sex'))
->sortable()
->searchable(),
< /code>
Но когда я добираюсь до фильтров, я не могу заставить это работать. Это основной < /p>
Tables\Filters\SelectFilter::make('player.sex')
->label(__('Sex'))
->options([
'M' => __('Male'),
'F' => __('Female'),
])
->default(null),
< /code>
Используя его, как это, он не работает, потому что запрос на перечисление не загружает отношение, как и ожидалось. Добавление отношений подобным образом: < /p>
->relationship('player', 'sex')
не работает также потому, что результат состоит в том, чтобы перезаписать мои варианты списком M и F, взятых у всех игроков в таблице Tournament_Players . Такие методы, как ModifyQueryUsing или GetEarchResultusing , не дают лучших результатов. Что я делаю не так?
Подробнее здесь:
https://stackoverflow.com/questions/797 ... ble-column