如何使用 devise_token_auth 跳过电子邮件确认?
how to skip email confirmation using devise_token_auth?
我正在为我的 Rails 应用程序使用 devise_token_auth gem。我想在用户 sign_up 完成后登录应用程序。如何跳过确认。
我尝试了 config.reconfirmable = false
但没有成功
任何人都可以建议我或帮助我如何实现这一目标?
我尝试了提供的解决方案
Why won't Devise allow unconfirmed users to login even when allow_unconfirmed_access_for is set?
但仍然以
结尾
{"success":false,"errors":["A confirmation email was sent to your account at test123@gmail.com. You must follow the instructions in the email before your account can be activated"]}
在模型定义中添加以下回调:
before_save -> { skip_confirmation! }
并从包含的设计模块中删除 :confirmable
:
devise :database_authenticatable, :recoverable,
:trackable, :validatable, :registerable,
:omniauthable # there is no :confirmable here
或者,如果您想跳过为某些人发送电子邮件确认,但继续为其他人发送(例如基于电子邮件地址),您可以这样做。
# app/models/user.rb
after_create :skip_confirmation_email_for_some_user
# ...
protected
def skip_confirmation_email_for_some_user
if self.email.include? "noconfirm"
self.skip_confirmation!
self.confirm
end
end
在 Rails 5.1.6 和 Devise Token Auth 0.2.0
上测试
如果有人有这个错误,include DeviseTokenAuth::Concerns::User
应该在 devise :database_authenticable...
https://github.com/lynndylanhurley/devise_token_auth/issues/397#issuecomment-166113011
之后
我正在为我的 Rails 应用程序使用 devise_token_auth gem。我想在用户 sign_up 完成后登录应用程序。如何跳过确认。
我尝试了 config.reconfirmable = false
但没有成功
任何人都可以建议我或帮助我如何实现这一目标? 我尝试了提供的解决方案
Why won't Devise allow unconfirmed users to login even when allow_unconfirmed_access_for is set? 但仍然以
结尾{"success":false,"errors":["A confirmation email was sent to your account at test123@gmail.com. You must follow the instructions in the email before your account can be activated"]}
在模型定义中添加以下回调:
before_save -> { skip_confirmation! }
并从包含的设计模块中删除 :confirmable
:
devise :database_authenticatable, :recoverable,
:trackable, :validatable, :registerable,
:omniauthable # there is no :confirmable here
或者,如果您想跳过为某些人发送电子邮件确认,但继续为其他人发送(例如基于电子邮件地址),您可以这样做。
# app/models/user.rb
after_create :skip_confirmation_email_for_some_user
# ...
protected
def skip_confirmation_email_for_some_user
if self.email.include? "noconfirm"
self.skip_confirmation!
self.confirm
end
end
在 Rails 5.1.6 和 Devise Token Auth 0.2.0
上测试如果有人有这个错误,include DeviseTokenAuth::Concerns::User
应该在 devise :database_authenticable...
https://github.com/lynndylanhurley/devise_token_auth/issues/397#issuecomment-166113011