只是乱搞铁路布局.经历
guide
2.2.11.2:布局选项
创建了一个名为two_column_landing的简单布局,并将其放在app / views下的layouts目录中.
然后修改我的视图以呈现布局:
<h1>Ca#tcl</h1>
<p>Find me in app/views/ca/tcl.html.erb</p>
<%= render layout: "two_column_landing" %>
我收到这个错误:
You invoked render but did not give any of :partial, :template, :inline, :file or :text option.
我知道在生产代码中做这个习惯可能不是一件好事,但我只想弄清楚如何做我想做的事.任何想法为什么这不起作用?它不是导轨4的特征吗?
最佳答案 你可能会继续阅读.可以使用多种布局方式.如果要为给定操作调用特定布局,则应在控制器中执行此操作,而不是在视图中执行.如果需要在视图中调用,为partial提供布局,则语法不同,首先调用partial,然后调用布局.
<%= render "comments", layout: "two_column_landing" %>
如果您只是希望在特定控制器中呈现2列视图,那么在任何方法定义调用之前,在控制器顶部,在类名称下
layout "two_column_landing"
如果只想为控制器中的特定操作调用此布局,可以在方法渲染中执行此操作
def index
@people = Person.all
render layout: "multi-column"
end