如何在宿主应用程序中呈现Rails引擎的视图

时间:2014-03-11 02:10:06

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

我需要一些帮助让rails引擎与我的宿主应用程序通信。

我在引擎中有一个标准的布局文件。

app/views/layouts/my_engine/application.html.erb

我的主机应用程序具有标准

app/views/layouts/application.html.erb

在主机应用程序中,我有一个包含导航栏的部分内容。我想在引擎生成的页面中使用此导航栏。

我不知道该怎么做。

我首次尝试解决此问题是在我的主机应用中创建此文件的另一个版本,从而覆盖原始行为。

app/views/layouts/my_engine/application.html.erb

我希望这个策略可行,但导航栏部分现在不知道属于主机应用程序的路由。它会在主机应用程序中的任何命名路由上抛出“无方法”错误。

那么我如何允许引擎在主机应用程序中呈现视图,但最终依赖于主机应用程序的app/views/layouts/application.html.erb中定义的页面结构?

1 个答案:

答案 0 :(得分:3)

从评论中复制此内容,以便其他人不会错过:

  

我发现这篇帖子,它回答了我的问题:Render engine within application layout

获得OP以寻找解决方案