Ruby 渲染视图';s稍后通过延迟的_作业输出
如果我呈现html,我会将html发送到浏览器,这非常有效。但是,当在模块或类中被调用时,如何获得路由的响应(html) 我需要这样做,因为我正在将文档发送到DocRaptor,而不是将标记/html存储在db列中,我希望在作业执行时存储记录ID并创建标记 一个可能的解决方案是使用Ruby的HTTP库、HttpParty或wget或其他东西,打开路由并使用response.body。在这么做之前,我想我应该问问周围的人 谢谢 --更新-- 以下是我最终的结果:Ruby 渲染视图';s稍后通过延迟的_作业输出,ruby,ruby-on-rails-3.2,Ruby,Ruby On Rails 3.2,如果我呈现html,我会将html发送到浏览器,这非常有效。但是,当在模块或类中被调用时,如何获得路由的响应(html) 我需要这样做,因为我正在将文档发送到DocRaptor,而不是将标记/html存储在db列中,我希望在作业执行时存储记录ID并创建标记 一个可能的解决方案是使用Ruby的HTTP库、HttpParty或wget或其他东西,打开路由并使用response.body。在这么做之前,我想我应该问问周围的人 谢谢 --更新-- 以下是我最终的结果: 快速提示-如果有人这样做并且需要他
快速提示-如果有人这样做并且需要他们的助手方法,您需要使用ApplicationHelper扩展AV: 下面是我最后做的事情:
av = ActionView::Base.new()
av.view_paths = ActionController::Base.view_paths
av.extend ApplicationHelper #or any other helpers your template may need
body = av.render(:template => "orders/receipt.html.erb",:locals => {:order => order})
链接:
检查此问题,它包含答案中可能需要的代码:
Quick note-简单地说,我以后如何从模块或类中“呈现到字符串”。因此,与其在控制器中呈现_到_字符串,我以后如何通过DJ实现相同的输出。您可以提供任何启动代码吗?我想这可以做到-谢谢!我只需要在正确的方向上轻推一下。快速提示-如果有人这样做并且需要他们的助手方法,您需要扩展ActionView ApplicationHelper