рельсы: добавьте атрибут к тегу опции через collection_select - PullRequest
1 голос
/ 21 сентября 2010

У меня есть коллекция_выбрать:

f.collection_select(:selected_id, @subcategories, :id, :cat_transl)

, который превращается в следующие теги:

<option value="4">Deutsch</option>
<option value="5">Chinesisch</option>
<option value="6">Spanisch</option>
<option value="10">Mathematik</option>

Я хочу добавить атрибут для каждой опции

<option value="4" parent="3">Deutsch</option>
<option value="5" parent="3">Chinesisch</option>
<option value="6" parent="3">Spanisch</option>
<option value="10" parent="9">Mathematik</option>

Как это возможно?

Спасибо Markus

Ответы [ 2 ]

2 голосов
/ 16 ноября 2010

Если вам действительно нужен этот атрибут, несмотря на тот факт, что это недопустимый HTML, используйте вспомогательный метод "content_tag".Вы можете создать любой тег с ним вручную.

<%= content_tag(:tag_name, 'text value',  { :value => 'form_value', :anyattr => 'my_val' }) %>
0 голосов
/ 21 сентября 2010

Это невозможно с помощью встроенных помощников Rails, возможно, из-за того, что это недопустимый HTML. Здесь вы можете увидеть, какие атрибуты поддерживает элемент option:

http://www.w3schools.com/TAGS/tag_option.asp

...