我是新来的轨道。我很难理解模板继承。早些时候我在 django 工作过,在那里看到了模板继承。在那里我看到孩子被告知父母使用“扩展”命令。任何人都可以在这里解释它是如何工作的。我已经阅读了红宝石指南,但不清楚。
谢谢
我是新来的轨道。我很难理解模板继承。早些时候我在 django 工作过,在那里看到了模板继承。在那里我看到孩子被告知父母使用“扩展”命令。任何人都可以在这里解释它是如何工作的。我已经阅读了红宝石指南,但不清楚。
谢谢
在 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
内容占位符。