我想用三个and
条件(必须)和两个or
条件编写Active Record。
我写了这个:
@properties = Property.where(category_id: 2).
where(status: 3).
where(p_type: 'sell')`
这会列出and
条件的查询。
我需要在最后加入两个or
条件。
尝试了这个,但收到了一个错误:
@properties = Property.where(category_id: 2).
where(status: 3).
where(p_type: 'sell').
or(location: @location).
or(featured: '1)`
我该怎么做?
答案 0 :(得分:1)
@properties=Property.where("(category_id = ? AND status = ? ) OR (location = ? OR featured = ?)", "2", "3", @location, "1")
答案 1 :(得分:0)
你可以试试这个。
@properties = Property.where(category_id: 2, status: 3).where("(p_type = ? OR location = ? OR featured = ?)", 'sell', @location, '1')