我创建了一个控制器,该控制器具有用于在excel中生成报告的动作,例如,我正在获取要生成报告的事件,因此我需要借助实例变量来在其实例中进行搜索事件的关系。
我了解这是一个关系问题,但我不需要为此建立模型,有什么办法可以解决我的问题?
event.rb:
class Event < ActiveRecord::Base
has_many :assistants
end
在我的控制器中:
class Admin::ReportAssistantsByEventsController < ApplicationController
let :ADMINISTRATOR, :all
include Admin::ReportAssistantsByEventsHelper
def index
respond_to do |format|
format.html
format.json {render json: ReportAllAssistantsDataTable.new(view_context)}
end
end
def assistants_report
@event_report = Event.where(id: params[:id])
respond_to do |format|
format.xlsx {render xlsx: 'report_all_assistants', :filename => "#{@event_report.name}.xlsx", layout: false, disposition: "attachment"}
end
end
end
在我的牧羊人中:
def data_assistants
assistants = @event_report.assistants
assistants.each do |assistant|
end
end
答案 0 :(得分:1)
此:
<icon :icon="['fas', 'user']" />
正在返回@event_report = Event.where(id: params[:id])
。如错误所示,它不响应ActiveRecord_Relation
。如果您希望assistants
成为@event_report
,请执行以下操作:
Event
或者:
@event_report = Event.where(id: params[:id]).first