Как установить параметры HTML для collection_select в Rails? - PullRequest
77 голосов
/ 22 декабря 2009

Я не могу найти синтаксис для добавления класса в тег выбора, сгенерированный Rails collection_select. Некоторая помощь?

Ответы [ 2 ]

175 голосов
/ 22 декабря 2009

Многие помощники Rails принимают несколько хеш-аргументов. Первый - это обычно параметры для управления самим помощником, а второй - html_options, где вы указываете собственные идентификаторы, классы и т. Д.

Определение метода выглядит следующим образом:

collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {})

Вы заметите кратное '= {}' в списке параметров. Чтобы использовать это, первый набор параметров, который вы бы указали, должен быть заключен в фигурные скобки:

collection_select(:user, :title, UserTitle.all, :id, :name, {:prompt=>true}, {:class=>'my-custom-class'})

Если у вас нет параметров для указания, кроме класса html, просто поместите пустой хеш-заполнитель:

collection_select(:user, :title, UserTitle.all, :id, :name, {}, {:class=>'my-custom-class'})

Дополнительная документация по API доступна по адресу: http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/collection_select

8 голосов
/ 12 августа 2015
= f.collection_select :category_id, Category.order(:name), :id, :name, {}, {class: "store-select"}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...