我有2个布局文件用于我想要做的事情:
application.html.erb
show_layout.html.erb
最终目标是,对于多个模型,show方法将使用这种新布局
根据{{3}}的信息,我认为它看起来像这样:
它将呈现模型的show文件的内容,并将其传递给show_layout.html.erb
,然后将其传递给yield
中的默认application.html.erb
。
当我尝试将<%= render template: "layouts/application" %>
添加到show_layout.html.erb
的底部时,它只是在默认布局中添加内容上方的内容。把它放在下面却恰恰相反
通过将整个show_layout.html.erb
包裹在<% content_for :override_yield do %>
中,然后在默认收益旁边的<%= yield :override_yield %>
中添加application.html.erb
,我找到了解决方案。
除非我以完全错误的方式考虑这个问题,否则似乎想要一个覆盖默认收益率的布局是常见的。
我的问题是,有没有更好的方法来实现这一目标?