我是铁杆新手。我很难理解模板继承。之前我曾在django工作,并在那里看过模板继承。在那里,我看到孩子使用“extends”命令被告知父母。任何人都可以解释它是如何工作的。我已经完成了红宝石的指导,但目前尚不清楚。
由于
答案 0 :(得分:1)
在Rails中这很简单。
您只需告诉当前渲染的模板渲染另一个模板。
例如layouts/application.html.erb
包含以下内容:
<% content_for :navigation do %>
<nav>...</nav>
<% end %>
<% content_for :content do %>
<%= yield %>
<% end %>
<%= render :template => 'layouts/main_application' %>
重要的部分是render :template
部分,然后委托此模板也呈现layouts/main_application.html.erb
,在我的案例中看起来像这样:
<header>
...
</header>
<body>
<%= yield :nav %>
<%= content_for?(:content) ? yield(:content) : yield %>
</body>
我在这里做的是拥有一个不包含导航的主模板(用于登录等),而application.html.erb将该导航添加到:nav
内容占位符。