2013-02-03 34 views
0

为什么以下方式不起作用? 尝试从查询中排除所有is_reply = 1值,但无法弄清楚如何执行。 我尝试了几种组合,但都失败了。ActiveRecord如何正确排除条件正确的记录?

所有具有is_reply = 1的记录仍然返回与此下面的查询,我认为需要分或部分,但如何?

@messages = Message.all(:[ '????is_reply = AND recipient_id = OR USER_ID =',0,current_user.id,current_user.id]条件=>)

回答

2

您可能需要使用圆括号()并将您的条件组合在一起

['is_reply = ? AND (recipient_id = ? OR user_id = ?)', 0, current_user.id, current_user.id]