Html 如何在整个页面中克隆eRubis文档中的元素?

Html 如何在整个页面中克隆eRubis文档中的元素?,html,ruby-on-rails,ruby,eruby,erubis,Html,Ruby On Rails,Ruby,Eruby,Erubis,我有一个简单的eRubis(*.html.erb)文档,希望在整个页面中“复制”各种元素。每当我使用这样的简单Ruby语句时: 中包含多个“times”语句,以复制更多元素,将返回错误或渲染糟糕的元素。使用Ruby语句在整个eRubis页面中“复制”多个元素的最佳方法是什么?我在RoR中使用的一种方法是内容

我有一个简单的eRubis(*.html.erb)文档,希望在整个页面中“复制”各种元素。每当我使用这样的简单Ruby语句时:
中包含多个“times”语句,以复制更多元素,将返回错误或渲染糟糕的元素。使用Ruby语句在整个eRubis页面中“复制”多个元素的最佳方法是什么?

我在RoR中使用的一种方法是
内容
产生
。我将我的元素存储在
content\u中
,然后我将
yield
s扔到我想要该元素的任何地方:

<% content_for :some_elements do %>
  <divs or whatever />
  <and maybe some things too />
  <%= even some more erb %>
<% end %>

<%= yield :some_elements %>
<%= yield :some_elements %>
<%= yield :some_elements %>
当然,
times
方法要求所有元素都位于同一位置。这就是
内容的优点,对于
/
收益率
方式,您可以将
收益率
放在任何您想要的地方。您甚至可以将
收益率
放在
时间内

<% 10.times do |i| %>
  <%= yield :some_elements %>
<% end %>


但这太疯狂了。总之,玩得开心。

你以前用过partials吗?这似乎正是他们用来解决的问题。唯一的问题是,您仍然需要一个Ruby语句来多次呈现该部分。
<% 10.times do |i| %>
  <%= yield :some_elements %>
<% end %>