我正在使用rails 3.我的整个应用仅限于使用Devise 2.2的注册用户。如何通过设计收集用户订阅请求的URL
我的要求: 能够说“用户想要在订阅时显示项目X(如条目/中:id是请求的URL)”。只要有可能,它就会告诉用户在注册时想看到什么应用程序。
例如:John点击www.website/item/48链接,但他没有注册到系统中。在设计将他重定向到设计登录页面后,他注册并被重定向(标准设计行为)到www.website/item/48。后来,该网站的管理员能够看到用户[email protected]创建了一个帐户,因为他想看到项目48.
当前设计是建立最经典的方式,所有我的控制器中有一个before_filter :authenticate_user!
。除设计外,登录/子订阅页面与默认页面类似。
我已经overided色器件默认登记控制器:
class RegistrationsController < Devise::RegistrationsController
def new
super
logger.debug"--------------------------------"
logger.debug session.inspect
logger.debug params.inspect
logger.debug resource
logger.debug"--------------------------------"
end
def create
super
logger.debug"-----------------------------------"
logger.debug session.inspect
logger.debug params.inspect
logger.debug resource.inspect
logger.debug"-----------------------------"
end
end
我对如何从设计获得请求的URL没有任何线索。我可以在新操作期间在会话变量中看到它,但一旦创建,我无法找到它。
如何在Devise的创建操作中获取并保存请求的URL?
它做我想要什么,但显然,它的阅读#{}范围在_return_to会议,并立即删除它。我要么获得网址,要么让用户在注册后不会重定向到原始网址。我需要两个,最重要的是,我需要一个完美的工作设计,因为我会使用不同类型的用户...:/但你的答案让我走上正确的道路,我会更新 – Syl 2013-05-15 16:29:21
我已经更新了我的回答:) – jokklan 2013-05-16 07:57:33