问题描述
我不希望页脚为大约五个控制器进行编辑或新建渲染。
类似于<%= render 'layouts/footer'
,除了:[:new,:edit] %>
in views/layouts/application.html.erb
我想我可以通过更改每个控制器来实现此目的,但在我的情况下,这至少会覆盖 5 个表。
或者我可以知道动作渲染并且可以在 _footer.html.erb
中执行 if then else。
这似乎很常见,所以 Rails 必须有一个简单的方法来做到这一点。
解决方法
<%= render 'layouts/footer' unless ["new","edit"].include?(action_name) %>
从长远来看,虽然有更好的技术来处理布局中的动态块,例如使用 captures helper 和 named yields。