Rails 3 - правило проверки с перенаправлением на собственный URL

У меня есть форма регистрации, и на этой модели установлено правило проверки для проверки правильности формата электронной почты и уникальности введенной электронной почты. Это отлично работает. Но тогда у меня после регистрации пользователь может изменить свой адрес электронной почты - в другой форме (страница настроек) - и когда он установит неверный формат электронной почты или установит адрес электронной почты, который уже занят, поэтому благодаря правилам проверки это письмо не будет сохранено в базы данных, но с ошибкой проверки пользователь будет перенаправлен на регистрационную форму.

И мой вопрос, как я могу изменить перенаправление - я бы хотел перенаправить пользователя обратно на страницу настроек.

1 ответ

Решение

Перейти к вашей #update метод в соответствующем контроллере (тот, который вызывается при отправке формы) и измените перенаправление отсюда. Возможно, ваш контроллер использует respond_withмакро. В этом случае просто измените его на

respond_to do |format|
    if @registration.save #say your model is @registration for example
      format.html
    else
      redirect_to settings_path #The regular situation here is usually render :action => "edit"
Другие вопросы по тегам