我的第一站是Devise wiki,我在那里found this page.看起来很容易,我进行了以下更改,并按照方向完全符合…
/app/controllers/registrations_controller.rb
class RegistrationsController < Devise::RegistrationsController protected def after_sign_up_path_for(resource) "http://google.com" end end
/config/routes.rb
devise_for :users,:controllers => { :registrations => "registrations" }
将“注册”文件夹从/ app / views / devise视图文件夹中移动到顶部/ app / views文件夹中的一个修改,因为返回的错误现在丢失了视图.无论如何,尽管控制器覆盖似乎正常工作(我不认为视图本来不会被打破),这些方向不起作用…页面忽略after_sign_up并在注册后返回到登录页面.
在互联网上狩猎包括其他Stack Overflow线程,但没有找到我为我工作…或者回答困惑重定向注册登录,或者他们实际上正在改变登录后的重定向(正如Devise正常注册后自动登录,无需启用确认).
我试过的其他事情
将after_sign_up_path_for(资源)移动到应用程序控制器中.不行奇怪的是,使用after_sign_in_path_for(资源)执行相同操作,并以用户身份重新登录.
将registrationmentscontrol.rb从/ app / controllers / into / app / controllers / users文件夹移动,并相应地更新所有路由/引用/ etc.不去
>将Devise的registrations_controller.rb复制到我自己的registrations_controller.rb中.没有工作,只是提出一个错误,我把它全部回来了.
>我试过def after_inactive_sign_up_path_for(资源),因为我认为也许这个帐户没有活跃的事实是罪魁祸首.这也被忽略.
>还有一点值得一提的是,在这些重大变化之后,我已经尝试重新启动我的项目,但没有任何效果.
有没有人有成功拉这个关闭确认启用?
解决方法
我正在使用Devise 1.2.rc2从github repo与rails 3.0.5.我添加了您提到的代码到我的自定义注册控制器,并在创建新帐户之后转发到谷歌.
我的注册控制器的一个截止版本(在app / controllers / users中)
class Users::RegistrationsController < Devise::RegistrationsController protected def after_sign_up_path_for(resource) "http://google.com" end end
我的路线
devise_for :users,:controllers => { :registrations => "users/registrations" }
从我的宝石
gem 'devise',:git => "git://github.com/plataformatec/devise.git"
如果您在最新版本的设计中遇到问题,请告诉我们.