Создание области для пользователей без роли (rolify)

У меня проблемы с показом фотографий с моей Userмодели.

Я хочу показывать фотографии ТОЛЬКО от пользователей, которым не назначена роль с помощью rolify.

Итак, мне нужно создать для него запрос:

@photos = Photo.where(User.find_by(Role == nil))

Я не могу заставить область работать...

Может ли кто-нибудь попробовать?

Спасибо!


person Gibson    schedule 19.02.2015    source источник
comment
User.includes(:photos).where.not(role: null) будет работать?   -  person Arup Rakshit    schedule 19.02.2015
comment
Попробуйте это: Photo.includes(user: :roles).where(roles: { id: nil })   -  person MrYoshiji    schedule 19.02.2015
comment
Отличная штука, MrYoshji, судя по всему, работает отлично. Спасибо   -  person Gibson    schedule 19.02.2015


Ответы (1)


Чтобы получить всех пользователей без роли:

User.with_role(nil)

Итак, предполагая, что фото принадлежит :пользователю (в таблице фотографий должен быть столбец user_id):

@photos = Photo.where(user_id: User.with_role(nil))
person infused    schedule 19.02.2015