Использование больше 0 в операторе find (: all,: условие => {}) в рельсах - PullRequest
2 голосов
/ 04 апреля 2011

Я пытаюсь (и не могу) построить оператор find all с условиями в rails для того, что мне нужно.Мне нужно найти все значения, где значение 'in' в таблице больше 0 (или просто не ноль, но это нормально), но у меня возникли проблемы с этим, вот что мне нужно:

@sales = Transaction.find(:all, :conditions => {:in => 'greater than 0'} )

Есть ли простой способ сделать это?

Спасибо,

Том

Ответы [ 2 ]

2 голосов
/ 04 апреля 2011

Вы можете использовать Arel для этого, не обращаясь к SQL:

@sales = Transaction.where(Transaction.arel_table[:in].gt(0)).all
1 голос
/ 04 апреля 2011

Попробуйте это

  @sales = Transaction.find(:all, :conditions => ['in > ?', 0] )

ИЛИ использовать такие условия, как

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