在rails3中获取不同控制器操作的输出

时间:2011-06-07 08:44:56

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

为了从HTML生成PDF,我需要用另一个控制器动作输出(HTML)的输出填充变量。有没有优雅的方法,如何获得这个HTML?

由于

2 个答案:

答案 0 :(得分:3)

您可以使用:

def print
  output = render_to_string(:action => :index)
end

在您的控制器中。

答案 1 :(得分:2)

您可以将该操作中的代码抽象为一个共享方法,该方法将在您的pdf生成操作中调用。

调用共享方法后,您将获得如下的html页面内容:

pdf_content = ERB.new(File.read("/path/to/that/erb.file")).result