我是 Rails 的新手。我的网络应用程序中目前有 3 个页面。我想知道什么是“cool rails way”,我可以轻松地在每个页面上实现相同的横幅(图片/网站 Logo /文本)和水平导航菜单,而无需复制和粘贴代码或为每个页面创建单独的 CSS 文件页。这可能吗?想坚持使用 Ruby/Rails/CSS/HTML。
此外,如果我为一个 Controller 的一个 View 创建一个名为 banner 的 css 元素,另一个 Controller 的另一个 View 似乎具有相同的样式。这里的幕后发生了什么事吗?
谢谢。
最佳答案
这通常是通过 application.html.erb 完成的。您将网站的标题放在该页面中,然后是 <%= yield %> 语句,然后是页脚。 yield 语句插入正在处理的任何操作的内容。
例如:
application.html.erb
<html>
<head>
</head>
<body>
<h1>My cool web site header and menu!</h1>
<%=yield %>
<p>Web site footer</p>
index.html.erb
<h2>Index</h2>
<ul>
<% @stuff.each do |thing| %>
<li><%=thing.name%></li>
<% end %>
</ul>
index.html.erb 的内容将被插入到 application.html.erb 中 <%=yield %> 出现的位置。
关于html - 想要在 Rails 中的每个页面上使用相同的横幅/导航菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20941788/