0

Sinatra 必须sinatra/contrib协助解决这个问题,Ramaze 中的等价物是什么?顺便说一句,我正在使用 Erubis。此外,快速的 Google 搜索会显示非常旧的页面,这些页面坚持在控制器中设置变量并在视图中使用它们。

编辑1:

取自 gem 文档 ( http://www.sinatrarb.com/contrib/content_for.html )

您通常从视图中调用 content_for 来捕获标记块,并为其提供标识符:

# index.erb
<% content_for :some_key do %>
  <chunk of="html">...</chunk>
<% end %>

然后,使用该标识符调用 yield_content,通常来自布局,以呈现捕获的块:

# layout.erb
<%= yield_content :some_key %>
4

1 回答 1

0

我不认为 Ramaze 可以在本地做到这一点。但是您可以很容易地手动执行此操作,编写一个帮助程序来执行此操作,甚至填充一个 Hash 实例。

如果您需要在循环中渲染小块 HTML,您可能还想查看部分内容。

您还可以组合render_partial,将结果存储在哈希中,并在布局中产生它的内容。

如果用例类似于渲染侧边栏,您可能想要编写一个帮助程序,以便将逻辑从视图中取出。

一个简单的例子在这里:https ://github.com/Ramaze/ramaze/wiki/Adding-a-dynamic-sidebar-in-a-layout

于 2014-02-11T07:58:24.737 回答