Как я могу создать уникальный идентификатор dom для тега html из модели

У меня есть представление индекса с несколькими строками для элементов с несколькими атрибутами. Я хотел бы обновить содержимое атрибута элементов с помощью ajax, поэтому мне нужен уникальный идентификатор dom. Есть ли вспомогательный метод? Что я делаю прямо сейчас:

<span id="<%=  item.id.to_s + "_on_storage"%>">

Лучший, Фил


person dc10    schedule 05.08.2012    source источник


Ответы (2)


Ты можешь использовать

dom_id(item)

Это метод ActiveRecord для создания идентификаторов DOM.

person Erez Rabih    schedule 05.08.2012
comment
dom_id — помощник, которого я ищу. Но что мне делать, если я хочу иметь идентификатор домена для каждого атрибута в модели? например, dom_id(item.attribute_in_the_model) - person dc10; 05.08.2012
comment
Вы можете использовать #{dom_id(item)}_attribute_name. Я предлагаю вам использовать классы для атрибутов, а не ID, поскольку класс повторяется, и очень удобно иметь их в классах. Затем вы можете получить объект с помощью $(#item_343 .attribute_name) . Очень чистый, очень интуитивно понятный. - person Erez Rabih; 05.08.2012
comment
Кроме того, если вам нужны полные теги-оболочки с идентификатором и набором классов для записи, вы можете использовать гем record_tag_helper . - person amoebe; 30.08.2016

Хорошей практикой также является использование атрибутов данных HTML5:

<span data-item-id="<%= item.id %>">
person iltempo    schedule 05.08.2012