gpt4 book ai didi

ruby - 多个区 block 的 yield

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:54 24 4
gpt4 key购买 nike

我正在编写一个基于 Sinatra 的小型应用程序,并希望每个 View 能够将各种项目插入到布局中,例如页面 titlehead 中额外的 CSS/javascript 引用.

目前我的布局 (erb) 看起来像这样(简化):

<html>
<head>
<title>Hard Coded Title Here</title>
<link rel="stylesheet" ... />
</head>
<body>
<h1>Hard Coded Title Here</h1>
<div id="content">
<%= yield %>
</div>
</body>
</html>

与其对标题和 CSS/JS 引用进行硬编码,不如按照以下思路实现一些目标:

<html>
<head>
<title><%= yield :title %></title>
<link rel="stylesheet" ... />
<%= yield :more_head_refs %>
</head>
<body>
<h1><%= yield :title %></h1>
<div id="content">
<%= yield %>
</div>
</body>
</html>

并且能够在每个 View 中为这些 block 定义内容。

这可能吗?如果可以,我该怎么做?

最佳答案

我最近在 Railscamp 遇到了这个问题,幸运的是 Tim Lucas 能够向我指出他 fork 并致力于的东西,叫做 sinatra-content-for .这将满足您的需求。

关于ruby - 多个区 block 的 yield ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1851749/

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