0

在过去的两周里,我遇到了以下问题:

我想用预渲染的 html-body 创建报告:

def new
  @content_for_prerendering= Report.get_content
  @report = Report.new
  template = ERB.new(File.read("#{Rails.root}/app/views/report_template/default.html.erb"))
  @report.body = template.result(binding)
end

遵循 ERB 文件。但是在模板文件 DEFAULT.HTML.ERB 中,我似乎只能看到局部变量,例如

 content_for_prerendering = Report.get_content

不是实例变量。将每个实例变量绑定到本地只是为了呈现一些 html 是非常不寻常的。我错过了什么吗?

4

1 回答 1

1

试试这个以获得视图上下文绑定以正确委托实例变量

@report.body = render_to_string :file => "#{Rails.root}/app/views/report_template/default.html.erb"
于 2012-05-29T15:26:54.633 回答