Добавление класса в grouped_options_for_select в форме Rails 4

Я не могу заставить класс по этому выбору работать. Сгруппированная коллекция работает... но не класс:

 = f.select :topic_id, grouped_options_for_select([['News',  @topics.news.order(title: :asc).collect {|v| [ v.title, v.id ] }],
        ['Opinion',    @topics.opinion.order(title: :asc).collect {|v| [ v.title, v.id ] }]]), html: {include_blank:  false , id:  'page_topic', class:  'form-control'} 

1 ответ

Решение

Попробуй без html: ключ:

= f.select :topic_id, grouped_options_for_select([['News',  @topics.news.order(title: :asc).collect {|v| [ v.title, v.id ] }],
    ['Opinion', @topics.opinion.order(title: :asc).collect {|v| [ v.title, v.id ] }]]), include_blank:  false, id: 'page_topic', class:  'form-control'

PS Ваш код очень трудно читать, попробуйте выделить некоторые части в переменные, например так:

- news_options = ['News', @topics.news.order(title: :asc).collect {|v| [ v.title, v.id ] } ]
- opinion_options = ['Opinion', @topics.opinion.order(title: :asc).collect {|v| [ v.title, v.id ] }]    
- options = grouped_options_for_select([news_options, opinion_options])
= f.select :topic_id, options, include_blank: false, id: 'page_topic', class: 'form-control'
Другие вопросы по тегам