Как сохранить сообщения об ошибках проверки после перезагрузки? - PullRequest
0 голосов
/ 26 февраля 2011

Я запускаю несколько проверок в моей модели foo.Вот как я обрабатываю действия по созданию и обновлению:

if @foo.update_attributes(params[:foo])
  #party time   
else
  @foo.reload #here is the issue
  render :action => "new" #or edit
end

Я должен перезагрузить атрибуты, потому что я использую значения формы по умолчанию для запуска несвязанного JavaScript.Проблема в том, что при перезагрузке атрибутов я, очевидно, теряю @ foo.errors.Есть ли способ, которым я могу передать их в новую перезагруженную переменную?Я предпочел бы это по сравнению с использованием JavaScript, чтобы предотвратить представление плохой формы.Спасибо!

1 Ответ

1 голос
/ 06 мая 2011

Метод перезагрузки явно не для этого.Вы можете: 1. определить свой метод для возврата значений 2. сохранить ошибки и затем переназначить 3. объединить атрибуты с @foo из только что загруженного объекта.не рекомендуется.На вашем месте я бы переосмыслил способ, которым все должно работать.

...