По имени date_select
генерирует <select>
элементов.Ни в одной версии (X) HTML элемент select
не поддерживает атрибут type
.Если вы хотите скрытое поле формы, вы должны использовать помощник hidden_field
, который генерирует <input type="hidden">
элементов.
(Чтобы ответить на ваш подразумеваемый вопрос об использовании, например, :class => 'something'
проблема в том, что параметры options
и html_arguments
должны быть двумя отдельными хэшами, но если вы делаете что-то вроде этого:
<%= f.date_select :date, :default => @date, :class => 'something' %>
.. интерпретатор Ruby предполагает, что вы указали одинхэш, то есть { :default => @date, :class => 'something' }
(и действительно, вы можете винить в этом?), и, поскольку class
не является действительным ключом для хеша options
, он игнорируется. Вместо этого вы должны сделать очевидным для Ruby, что это дваразделите параметры, выполнив что-то вроде этого:
<%= f.date_select :date, :default => @date, { :class => 'something' } %>
<%# Hey Ruby, this is a different Hash! ----^ %>
Видите разницу? Конечно, вы можете помешаться и быть действительно очевидным, например:
<%= f.date_select(:date, { :default => @date }, { :class => 'something' }) %>
... но это уродливо и вопиюще, так что не беспокойтесь.)