Как я могу добавить класс управления загрузкой для Ruby on Rails collection_select - PullRequest
0 голосов
/ 18 мая 2018

У меня есть тег collection_select, где пользователь может выбрать, какого веб-пользователя назначить для билета.Элементы из collection_select будут получены из базы данных.

Как добавить класс начальной загрузки form-control в этот тег collection_select?

Я пробовал этот код:

<%= f.collection_select :web_user_id, WebUser.all,:id,:email, include_blank: true, class: 'form-control' %>

но это не сработало.Я также прочитал эти документацию по Ruby on Rails 5.2.0 , но это не сработало.

enter image description here

Ответы [ 3 ]

0 голосов
/ 18 мая 2018
<%= f.collection_select :web_user_id, WebUser.all,:id,:email, {prompt: "Select web users"}, { class: 'form-control' } %>

Попробуйте, это может вам помочь.

0 голосов
/ 18 мая 2018

Просто добавьте {} после :email как

<%= f.collection_select :web_user_id, WebUser.all, :id, :email, {}, include_blank: true, class: 'form-control' %>

и посмотрите сгенерированный HTML

<select include_blank="true" class="form-control" name="web_user[web_user_id]" id="web_user_web_user_id">
    <option value="20">avcd@example.com</option>
    <option value="21">sa@example.com</option>
</select>
0 голосов
/ 18 мая 2018

Превратите ваш код в:

<%= f.collection_select :web_user_id, WebUser.all,:id,:email, {}, { :include_blank => true, class: 'form-control' } %>

Это часть html_options метода.См. https://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/collection_select для получения дополнительной информации.

Сначала необходимо установить options = {}, как пустые скобки, по крайней мере, {}.

Затем вы можете установить include_blank и class между вторыми скобками (html_options = {}).

Окончательная форма должна быть такой же, как и {}, { :include_blank => true, class: 'form-control' }

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