Фон
На странице ActiveAdmin вы можете добавить фильтры следующим образом:
filter :column_name_1
filter :column_name_2
Таким образом, вы создадите новый оператор фильтра для borrowers
, но по умолчанию, это создаст выбор.
filter :borrowers
Решение
Итак, чтобы сказать, что вы не хотите использовать выбор, вам нужно изменить символ, который вы даете ему, с тем, какой столбец в ассоциация, которую вы хотите отфильтровать. Поэтому, если вы хотите фильтровать по идентификатору заемщиков, вы сделаете следующее:
# You specify as: :numeric to so ActiveAdmin knows to add
# filtering options for numbers. So when it renders on the page,
# for the filter option it will display three options to filter by:
# ID equals, is greater than, or is less than
filter :borrowers_id, as: :numeric
Если вы хотите отфильтровать по другому столбцу, который является строкой, например, name
, вы Я сделаю следующее:
filter :borrowers_name, as: :string
Примечание : Я также заметил, что если вы не укажете as: :type
, тогда ActiveAdmin не распознает фильтр и не отобразит что-нибудь для этого.
При ответе на вопрос: Active Admin - фильтр по наличию ассоциации has_many