ove*_*lox 6 ruby ruby-on-rails-3
随着ruby on rails,我想做的事情如下:
@tasks = Task.where(:def => true || :house_id => current_user.house_id)
Run Code Online (Sandbox Code Playgroud)
最有效/干净的方法是什么?
你可以这样做:
Task.where("def = ? or house_id = ?", true, current_user.house_id)
Run Code Online (Sandbox Code Playgroud)
一般情况是:
Model.where("column = ? or other_column = ?", value, other_value)
Run Code Online (Sandbox Code Playgroud)
你也可以利用Arel:
t = Task.arel_table
@tasks = Task.where(
t[:def].eq(true).
or(t[:house_id].eq(current_user.house_id))
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1147 次 |
| 最近记录: |