【发布时间】:2017-04-06 19:47:56
【问题描述】:
Trip.rb
class Trip < ActiveRecord::Base
has_one :report
end
报告.rb
class Report < ActiveRecord::Base
belongs_to :trip
belongs_to :user
end
旅行首先存在,然后需要报告。创建报告时,它会获得一个trip_id。这种关系在控制台Trip.report 显示正确的报告中起作用
我试图弄清楚如何(大概在 Trip 模型中)通过关系获取没有报告的 Trips 列表
这似乎应该是直截了当的,但我觉得它可能不是。
scope :need_report, -> { where(joins(:report)) }
会给我提供有报告的旅行,但我正试图返回相反的结果。
不确定我是否应该:
- 返回连接的反面
- 以某种方式嵌套并更新行程的 report_id,以便于调用
【问题讨论】:
标签: ruby-on-rails ruby scope