Я только что обновил Rails 2.3.2 с Rails 2.1 и заметил проблему с использованием опции :disabled
в полях ввода.
Ранее мы использовали эту опцию в качестве логического значения, поэтому мы указывали, хотим ли мы отключить поля на основе метода объекта, например,
f.text_field :amount, :disabled => @my_object.is_disabled?, :class => 'my_class'
Это прекрасно работает в Rails 2.1 - если is_disabled?
возвращает true, поле формы отключено, в противном случае это не так.
В Rails 2.3, однако, это не так. Поле формы отключено независимо от значения :disabled
.
Означает ли это, что мне придется поместить оператор if
вокруг моей декларации f.text_field
, такой как:
<% if @my_object.is_disabled? %>
<%= f.text_field :amount, :disabled => 'disabled', :class => 'my_class' %>
<% else %>
<%= f.text_field :amount, :class => 'my_class' %>
<% end %>
Конечно, я что-то здесь упускаю?