gpt4 book ai didi

ruby-on-rails - 如何在rails中将子模板扩展到父模板

转载 作者:行者123 更新时间:2023-12-02 03:58:23 26 4
gpt4 key购买 nike

我是新来的 rails 。我很难理解模板继承。早些时候我在 django 工作过,在那里看到了模板继承。在那里我看到 child 被告知 parent 使用“扩展”命令。任何人都可以在这里解释它是如何工作的。我已经阅读了 ruby 指南,但不清楚。

谢谢

最佳答案

在 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然后委托(delegate)此模板来渲染 layouts/main_application.html.erb 的部分在我的情况下看起来像这样:
<header>
...
</header>
<body>
<%= yield :nav %>
<%= content_for?(:content) ? yield(:content) : yield %>
</body>

我在这里所做的是拥有一个不包含导航(用于登录等)的主模板,并且 application.html.erb 将该导航添加到 :nav内容占位符。

关于ruby-on-rails - 如何在rails中将子模板扩展到父模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11573426/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com