我想找到多个条件的记录,这是我的代码:的Rails 3.1:“在那里”有多个条件,“不是零”验证
@calhappybd = Client.where(:user_id => current_user.id, "birth IS NOT NULL")
我试图用squeel创业板要做到这一点,但是当我尝试使用多个条件(其中{(cond1)(cond2)}),但是我的current_user.id被定义为简单的字符串数据。
我想找到多个条件的记录,这是我的代码:的Rails 3.1:“在那里”有多个条件,“不是零”验证
@calhappybd = Client.where(:user_id => current_user.id, "birth IS NOT NULL")
我试图用squeel创业板要做到这一点,但是当我尝试使用多个条件(其中{(cond1)(cond2)}),但是我的current_user.id被定义为简单的字符串数据。
随着squeel,你应该能够做到像
@calhappybd = Client.where{(user_id == current_user.id) & (birth != nil)}
我们知道,如果你再次得到同样的错误...
更新:
修改上述条件。请注意单连字符和双等号。这对我的作品..
我的配置:
rails 3.1.0.rc6
squeel 0.8.8
谢谢,但不能工作:(它必须是&&(而不是单一&)与Client.where {(user_id = current_user.id)&&(birth!= nil)}我已经得到我的所有客户:←[1m←[36m客户端负载(0.0ms)←[0m←[1mSELECT“clients”。* FROM“clients”←[0m =>所有客户名单..... –
我有一个解决方案:@calhappybd = Client.where(:user_id => current_user.id,:birth => Date.today-666.year..Date.today)。它适用于我,但它不是主题问题的答案:) –
更新了答案。你可以再试一次 – dexter
你说的简单的字符串数据意味着什么? –
我的意思是试图在表中找到“current_user.id”记录:) –
SQLite3 :: SQLException:no such column:current_user.id:SELECT“clients”。* FROM“clients”WHERE“clients”。“user_id” =“current_user”。“id” –