Ruby on rails 页面布局是否需要使用application.html.erb?
完全不用application.html.erb可以吗?而只是使用控制器的实际html?application.html.erb的用途是什么Ruby on rails 页面布局是否需要使用application.html.erb?,ruby-on-rails,erb,Ruby On Rails,Erb,完全不用application.html.erb可以吗?而只是使用控制器的实际html?application.html.erb的用途是什么 观点 书籍 -index.html.erb 关于我 -about.html.erb 布局 -application.html.erb-mailer.html.erb-mailer.text.erb 可以不使用application.html.erb文件,您可以指定所需的布局文件,并且不限于一个 您可以为操作或控制器执行此操作 application.
- 观点
- 书籍
-index.html.erb - 关于我
-about.html.erb - 布局
-application.html.erb-mailer.html.erb-mailer.text.erb
- 书籍
为了澄清,您的视图(例如在books:index.html.erb下)由于application.html.erb文件而显示。如果您查看该文件,您将使用yield函数,这就是使index.html.erb中的内容可见的原因。您的问题答案是肯定的。默认情况下应用application.html.erb布局,下面是一些其他选项 没有应用布局
render :layout => false
例如,这将进入视图的方法中
def index
@books = Book.all
render :layout => false
end
这将从书籍的索引视图中删除任何布局文件
yoursitename.com/books
还可以指定您拥有的其他布局文件
def index
@books = Book.all
render :layout => "books_layout"
end
可能也值得您花费时间您可以完全不为视图指定布局,也可以为视图指定其他布局,如果需要,甚至可以为每个视图指定特定的布局视图。因此,是的,不在任何或所有视图上使用默认的application.html.erb布局是完全可以的,但是我不确定当您提到控制器实际的html时,您的控制器中不应该包含任何html。@RockwellRice我实际上指的是视图html,它是从我的帖子中生成的,视图>书籍>index.html.erb,我还不熟悉这些术语抱歉。