根据条件添加到活动记录查询

时间:2013-09-10 21:34:25

标签: ruby-on-rails ruby ruby-on-rails-3 activerecord

我得到错误的参数数量错误(0表示1+)。 我的代码

  vs = where(created_at: start.beginning_of_day..Time.zone.now)
  vs = where(owner_id: id)
  if cat == "store"
    vs = where.not(store_id: 0) 
  end

问题是那里的if条件,它不喜欢我在执行where子句之前尝试添加该条件的方式。
有没有办法根据cat变量是否存储将where子句添加到vs? 感谢

1 个答案:

答案 0 :(得分:0)

不,问题不在于您添加条件的方式。这是条件本身,因为where需要一个参数。 where.not根本不起作用。

尝试where('store_id <> 0')