我需要一些帮助获得rails引擎与我的主机应用程序通信。
我在引擎中有一个标准布局文件。
app/views/layouts/my_engine/application.html.erb
和我的主机应用有标准的
app/views/layouts/application.html.erb
在主机应用中,我有一个包含导航栏的部分。我想在引擎生成的页面中使用这个导航栏。
我不知道该怎么做。
我第一次尝试解决这个问题是在我的主机应用程序中创建这个文件的另一个版本,从而覆盖原来的行为。
app/views/layouts/my_engine/application.html.erb
我希望这个策略能起作用,但是导航栏部分现在不知道属于宿主应用程序的路由。它会在宿主应用程序中的任何命名路由上抛出'no method'错误。
那么我如何允许引擎在宿主应用程序中呈现视图,但最终依赖于宿主应用程序在app/views/layouts/application.html.erb
中定义的页面结构呢?
从评论中复制,以免其他人错过:
我找到了这篇文章,它回答了我的问题:渲染引擎在应用程序布局
感谢OP找到了解决方案