如何在rails中进行外连接

时间:2016-04-26 07:52:34

标签: ruby-on-rails ruby-on-rails-3 activerecord

我需要在rails中加入外连接

@recent_details = Property.joins(:space_amenities,:event_suitabilities,:purpose_suitabilities,:venue_categories).where(id: params[:id])

这个活跃的记录给了我内心的联系。但是我需要使用此活动记录进行外部联接。

请帮忙 任何帮助都很明显

2 个答案:

答案 0 :(得分:1)

如果您想要LEFT OUTER加入,可以使用包含,或者您可以添加以下手动加入:

@recent_details = Property.joins("LEFT OUTER JOIN space_amenities ON space_amenities.property_id = properties.id ").where(id: params[:id])

通过这种类型的连接,您可以添加任何类型的连接,例如RIGHT outer等。

答案 1 :(得分:0)

LEFT,RIGHT(OUTER)JOIN在编译JOINS时具有相同的约定,所以基本上你指定了你的需要:

@recent_details = Property.joins("LEFT OUTER JOIN space_amenities ON space_amenities.property_id = properties.id").where(id: params[:id])