Rails:在视图中计算变量

时间:2009-02-24 15:29:57

标签: ruby-on-rails

喂!我使用@ lists.each do | list |遍历哈希。我在每个必须有id的循环中创建一个div。我会在PHP中创建一个count变量来获得一个明确的id。在Rails视图中执行此操作的最佳方法是什么?谢谢!

3 个答案:

答案 0 :(得分:6)

假设这些是ActiveRecord模型(即来自数据库),您可以使用dom_id助手,如下所示:

<% @lists.each do |list| %>
  <div id="<%= dom_id(list) %>">
    ... rest of list ...
  </div>
<% end %>

这样每个div都会得到一个像list_49这样的ID,其编号对应于数据库中的ID。

答案 1 :(得分:2)

另一种方法是使用div_for助手:

<% @lists.each do |list| %>
  <% div_for(list) do %>
    ... content in div ...
  <% end %>
<% end %>

这将添加与Luke建议相同的id格式。请注意,它还会添加list的类属性。您可以通过传递:class => 'my-class'来添加其他类。

答案 2 :(得分:0)

你为什么不拿这个名单的id?或者id必须是“全球唯一的”吗?

更新:我认为你应该接受卢克的回答。