是否有必要使用application.html.erb进行页面布局?

时间:2017-05-22 00:51:13

标签: ruby-on-rails erb

可以不使用application.html.erb吗?而只是使用控制器实际的HTML? application.html.erb有什么用?

  • 的观点

    • -index.html.erb
    • aboutme
      -about.html.erb
    • 布局
      -application.html.erb -mailer.html.erb -mailer.text.erb

2 个答案:

答案 0 :(得分:1)

问题的答案是肯定的。默认情况下会应用application.html.erb布局,以下是其他一些选项。

没有应用布局

render :layout => false

这将进入视图的方法,例如

def index
  @books = Book.all
  render :layout => false
end

这将从Books的索引视图中删除任何布局文件 yoursitename.com/books

您还可以指定不同的布局文件。

def index
  @books = Book.all
  render :layout => "books_layout"
end 

也许值得你花时间http://guides.rubyonrails.org/layouts_and_rendering.html

答案 1 :(得分:0)

可以不使用application.html.erb文件,您可以指定您想要的布局文件,并且您不仅限于一个。

您可以为动作或控制器执行此操作。

application.html.erb文件的目的是为您设置查看文件的布局。

只是为了澄清一下,由于application.html.erb文件,您在例如books:index.html.erb下的视图正在显示。如果您查看该文件,您将获得yield函数以及使index.html.erb中的内容可见的原因。