订购加入的结果

时间:2014-03-08 02:45:15

标签: ruby-on-rails

我有两张桌子:

Deal has many Opportunities
Opportunity belongs to Deal

我正在尝试订购一个联接查询,该查询根据其状态以及交易状态显示商机列表。查询工作正常,除非我在最后添加.order("deal.addr_street desc")

@opportunities = Opportunity.joins(:opportunity_status).where("opportunity_statuses.id in (1, 2, 3, 6)").joins(:deal).merge(Deal.joins(:deal_status).where("deal_statuses.deal_status in ('On Market', 'Pre-sale')")).order("deal.addr_street desc")

错误是:

  

* SQLException:没有这样的列:opportunity.deal.addr_street:SELECT“opportunities”。* FROM“opportunity”INNER JOIN   “opportunity_statuses”ON“opportunity_statuses”。“id”=   “机会”。“opportunity_status_id”INNER JOIN“处理”ON   “deals”。“id”=“机会”。“deal_id”LEFT OUTER JOIN   “deal_statuses”ON“deal_statuses”。“id”=“deals”。“deal_status_id”   WHERE((1,2,3,6)中的opportunity_statuses.id)AND   (在''市场','预售')中的deal_statuses.deal_status)订购   opportunity.deal.addr_street desc *

有人能告诉我如何订购加入的结果?我在rails4上

尼克

1 个答案:

答案 0 :(得分:1)

您需要在订单子句

中复数表名
(...).order("deals.addr_street desc")