2013-07-18 4 views
0

Я работаю над приложением, которое позволяет пользователю просматривать сайт и регистрироваться на любой странице (ссылка для входа находится в общем заголовке). После успешного входа в систему пользователь в настоящее время перенаправляется со страницы входа в root_url.Rails: как перенаправить на исходную страницу после входа в систему

Было бы более удобно перенаправить на исходную страницу. Я попытался сохранить именованный маршрут исходной страницы в сеанс, но они выглядят как объекты, поэтому их невозможно передать. Кроме того, не все маршруты поставляются с названными помощниками. С другой стороны, когда я передаю литеральный путь как строку в redirect_to, например, 'orders/index', Rails интерпретирует/действие как параметр id и ошибки.

Будет ли Rails способом сделать это? Благодаря!

+1

На этот вопрос ответили «Ответ на этот вопрос», пожалуйста, перейдите по ссылке «Связанные» в правом нижнем углу этой страницы. Я уверен, что вы найдете ответ, который вы ищете. – vee

+0

Люди, помечайте свой вопрос по мере необходимости с помощью правильной версии рельсов, которую вы используете! – rmagnum2002

+0

Что касается перенаправления, если это рельсы 3,2 или более, то «redirect_to: back» будет делать то, что вам нужно. – rmagnum2002

ответ

3

Вы можете получить URL-адрес страницы, с которой пользователь приходит, используя request.referrer внутри вашего контроллера.

+0

Не всегда работает для моей ситуации, но узнал что-то новое - спасибо! – pete

Смежные вопросы