Sinatra已经sinatra/contrib
对此进行了分析,这与Ramaze中的相同之处是什么?顺便说一下,我正在使用Erubis。此外,快速谷歌搜索显示真正的旧页面,坚持在控制器中设置变量并在视图中使用它们。
编辑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 %>
答案 0 :(得分:0)
我不认为Ramaze可以原生这样做。但你可以很容易地手动执行此操作,编写帮助程序来执行此操作,甚至填写哈希实例。
如果需要在循环中渲染小块HTML,您可能还需要查看部分内容。
您还可以合并render_partial
,将结果存储在哈希中,并在布局中生成内容。
如果用例类似于渲染侧边栏,您可能希望编写一个帮助程序,以便从视图中取出逻辑。
这里有一个简单的例子:https://github.com/Ramaze/ramaze/wiki/Adding-a-dynamic-sidebar-in-a-layout