ruby на рельсах redirect_to (: назад) не работает - PullRequest
3 голосов
/ 20 августа 2009

Следуя некоторому коду в книге Agile Web Development, есть способ перенаправить обратно на последнюю просмотренную страницу, используя redirect_to (: back), однако, когда я это делаю, он просто возвращает страницу, на которой он был.

Каков наилучший способ получить желаемый результат для работы? Я делаю что-то неправильно? Мой код:

def update
@user = current_user
if @user.update_attributes(params[:user])
  flash[:notice] = "Successfully updated profile."
  redirect_to(:back)
else
  render :action => 'edit'
end
end

Ответы [ 2 ]

8 голосов
/ 20 августа 2009

Я думаю, что он ведет себя как задумано :

: назад - Вернуться на страницу, с которой был отправлен запрос. Полезно для форм, которые запускаются из нескольких мест.

1 голос
/ 20 августа 2009

Разве это не то, что он должен делать? Вы, вероятно, находитесь на странице редактирования, когда нажимаете какую-то кнопку «отправить», чтобы обновить атрибуты пользователя. Когда обновление будет завершено,: back вернет вас на страницу редактирования (это последняя просмотренная страница). Разве это не то, что вы хотите?

Если вы хотите перейти на страницу пользователя, вы можете сделать что-то вроде этого

redirect_to user_path(@user)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...