Rails Active Admin - разный index для разных групп пользователей
Есть рельса 5.2.1 и актив админ 1.3.1, канкан для авторизации. У AdminUser есть атрибут role, который определяет доступ.
Нужно для определенной роли отключить отображение списка индекса(скрыть коллекцию обьектов), но оставить фильтры и выдавать результат по ним. В документации нашел несколько вариантов, но не уверен в их работоспособности. Как лучше реализовать эту логику?
Ответы (1 шт):
Автор решения: Nikita
→ Ссылка
В итоге помогло переписывание метода scoped_collection c добавлением условия по приходящим params (наличие фильтра, в моем случае 'q').
def scoped_collection
if current_admin_user.operator_role? && params['q'].blank?
super.where(id: nil)
else
super.includes(
...
)
end
end