В ActiveRecord, как проверить, является ли свойство объекта нулевым? - PullRequest
1 голос
/ 16 февраля 2011

Предположим, мне нужно проверить, не установлено ли определенное свойство.

Я представляю что-то подобное, но это не работает.

@users = User.find_all_by_role(["role = ?",nil])

Я попробовал другие варианты без удачи.

Полагаю, это должно быть довольно просто.

Спасибо!

Ответы [ 3 ]

1 голос
/ 16 февраля 2011

Используя синтаксис ActiveRecord до 3.0:

@users = User.find(:all, :conditions => { :role => nil })

После 3.0 вы можете написать:

@users = User.where(:role => nil)
0 голосов
/ 16 февраля 2011
@users = User.where(:roles => nil).all

Для этого не нужно разбиваться на SQL.

0 голосов
/ 16 февраля 2011

Попробуйте: @users = User.find(:all, :conditions=>'role is null')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...