我来自PHP开发,我正在尝试学习Ruby on Rails。我想知道插入页眉和页脚的最佳做法是什么?通常在PHP中,我只需include('header.php');
然后include('footer.php');
现在我正在尝试学习Ruby on Rails并试图了解我应该如何或在哪里放置这些页眉/页脚文件?
我创建了一个新的应用程序
rails new new_app
然后我生成了一个新的控制器
rails generate controller SignUp
这创建了一些文件和文件夹。我在新的new_app/views/sign_up
文件夹中开发了一些HTML,但我想在此页面和将来的页面中包含页眉和页脚。我应该在哪里有这些文件?在同一个文件夹中?或在new_app/views/layouts
下的默认文件夹下?另外,如何在创建文件后包含文件?
我是ruby on rails开发的新手,我想从专家那里获得一些知识!谢谢!
答案 0 :(得分:60)
在new_app/views/layouts
中会有一个名为application.html.erb
的文件。打开该文件,将标题内容放在上面写<%= yield>
的位置,将页脚内容放在<%=yield>
下面。
我通常在名为_header.html.erb
和_footer.html.erb
的布局文件中制作一个parital,并执行以下操作: -
<%= render "layouts/header" %>
<%=yield %>
<%= render "layouts/footer" %>
答案 1 :(得分:2)
如果您有动态内容,则可以为页眉和页脚创建部分,并在布局文件中使用render
包含它们。否则,你可以编辑你的布局文件以获得页眉和页脚。
您的脚手架为SignUp生成了视图,将使用布局文件呈现最终的HTML,因此app/views/layouts/application.html.erb
文件中的所有内容都将包含在输出中(假设您使用此文件作为布局文件为了你的观点)。