Rails: переменная Count в поле зрения - PullRequest
1 голос
/ 24 февраля 2009

Эй! Я перебираю хеш с @ lists.each do | list |. Я создаю div в каждом цикле, который должен иметь идентификатор. Я бы создал переменную count в PHP, чтобы получить определенный идентификатор. Каков наилучший способ сделать это в представлении Rails? Спасибо!

Ответы [ 3 ]

6 голосов
/ 24 февраля 2009

Предполагая, что это модели ActiveRecord (т.е. из базы данных), вы можете просто использовать помощник dom_id, например:

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

Таким образом, каждый div получит идентификатор, подобный list_49, с номером, соответствующим идентификатору в базе данных.

2 голосов
/ 24 февраля 2009

Альтернативой может быть использование помощника div_for:

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

Это добавит тот же формат идентификатора, что и предложение Люка. Имейте в виду, что он также добавил бы атрибут класса list. Вы можете добавить дополнительные классы, передав :class => 'my-class'.

0 голосов
/ 24 февраля 2009

Почему бы вам просто не взять идентификатор из списка? Или идентификатор должен быть каким-то «глобально уникальным»?

Обновление : Я думаю, вы должны пойти с ответом Люка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...