2015-01-06 4 views
4

У меня есть модель User, у которой есть _many фотографии. Я хочу настроить фильтр флажков в Active Admin для фильтрации тех пользователей, у которых есть фотографии. В основном, где присутствует ассоциация фотографий.Active Admin - фильтр по наличию ассоциации has_many

class User < ActiveRecord::Base 
    has_many :photos 
end 

Есть ли простой способ сделать это? Я знаю, что вы можете фильтровать пользователи, у которых есть определенное фото и т. Д., Но я не видел примера, где вы можете фильтровать по присутствию.

ответ

8

Поиск правильного заклинания методов поиска Ransack является сложным. Для поиска, где photos.id IS NOT NULL может быть осуществлен со следующим фильтром:

ActiveAdmin.register User do 
    # Filter users where photos.id is not null 
    filter :photos_id_not_null, label: "With Photos", as: :boolean 
end 
Смежные вопросы