出口.rb:
def latest_reports
weekly_reports.limit(10)
end
Outlet_controller.rb:
@all_outlets = Outlet.includes(:weekly_reports)
@search = @all_outlets.search(params[:q]) # load all matching records
@outlets = @search.result.order("created_at DESC").page(params[:page])
出口/index.slim:
- @outlets.each do |outlet|
tr
td= link_to outlet.name, outlet_path(outlet)
th
ul.reports
li class="#{'done' if outlet.monitored_today}"
th
ul.reports
- for report in outlet.latest_reports
li class="#{'done' if report.quota_met}"= report.times_monitored
我不确定为什么,但这会将其加载为几个不同的查询。我很确定这是因为我的控制器中的包含不正确(因为我在模型中使用了一种方法)。
如果有人可以帮助我改进这一点,我将非常感激:)。
注意:我在 PostgreSQL 上开发
更新::发布了完整的控制器操作。