Ruby on rails 为不工作设计注册后路径
我按照这里的指示: 我正在成功地使用我自己的注册控制器。这是我的路线代码:Ruby on rails 为不工作设计注册后路径,ruby-on-rails,ruby-on-rails-4,devise,devise-confirmable,Ruby On Rails,Ruby On Rails 4,Devise,Devise Confirmable,我按照这里的指示: 我正在成功地使用我自己的注册控制器。这是我的路线代码: devise_for :users, controllers: {registrations: "users/registrations", sessions: "users/sessions", passwords: "users/passwords", confirmations: "users/confirmations"} 这是我的控制器代码: class Users::RegistrationsContro
devise_for :users, controllers: {registrations: "users/registrations", sessions: "users/sessions", passwords: "users/passwords", confirmations: "users/confirmations"}
这是我的控制器代码:
class Users::RegistrationsController < Devise::RegistrationsController
def new
super
end
def create
puts "in my custom create action"
super
end
protected
def after_sign_up_path_for(resource)
puts "in after sign up path for"
if resource.new_record? #user not created. Do default behavior: render new user page
puts "new record"
else #user created
puts "user created"
return new_user_session_path
end
end
end
类用户::注册控制器<设计::注册控制器
def新
超级的
结束
def创建
将“在我的自定义创建操作中”
超级的
结束
受保护的
注册后的def路径(资源)
将“在注册路径之后放入”
如果是resource.new_记录#用户未创建。执行默认行为:呈现新用户页
创造“新纪录”
否则#用户创建
将“用户创建”
返回新的用户会话路径
结束
结束
结束
我知道正在调用创建操作,因为服务器日志中出现了
将“in my custom create action”
。由于某些原因,在注册之后,没有调用(资源)的路径。我正在使用Desive confirmable-这将产生影响。如何解决此问题?是的,可确认
确实会产生影响,因为用户尚未在系统中处于活动状态。您可以在自定义控制器中执行此操作:
def after_inactive_sign_up_path_for resource
# Custom code here
end