Использовать "error_messages" в Rails 3.2? (вызывает ошибку undefined method)
В моих функциональных тестах Rails 3.2 появляется следующая ошибка:
ActionView:: Template:: Ошибка: undefined метод `error_messages 'для # < ActionView:: Помощники:: FormBuilder: 0x007ff8ad00d3b0 >
Код представления, создающий ошибку:
<%= form_for [@camp, @program] do |f| %>
<%= f.error_messages %> # problematic code
<%= f.label :name %>
<% end %>
Вот код в моем контроллере, который вызывает вышеуказанный код представления:
render :action => "edit", :status => :bad_request
И вот тест, который я запускаю:
test "update a program with a bad request" do
put :update,
:id => programs(:traditional).to_param,
:program => {
:min_age => "a"
},
:camp_id => camps(123).uri
assert_response :bad_request
end
Есть ли у кого-нибудь представление о том, почему эта ошибка возникает в приложении Rails 3.2?
Спасибо!
Ответы
Ответ 1
попробуйте использовать следующий код для повторения всех ошибок, если они есть.
<%= form_for [@camp, @program] do |f| %>
<% @program.errors.full_messages.each do |msg| %>
<p><%= msg %></p>
<% end %>
<%= f.label :name %>
<% end %>