繁体   English   中英

Devise - 可确认不发送电子邮件

[英]Devise - Confirmable not sending emails

只是为了摆脱它:我的应用程序中确实有电子邮件。

我刚刚添加:可确认给我的用户 model。

应用程序/模型/user.rb

devise :database_authenticatable, :registerable, :omniauthable,
   :recoverable, :rememberable, :trackable, :validatable, :confirmable

我在数据库中有可确认的部分:

数据库/schema.rb

create_table "users", :force => true do |t|
  ...
  t.string   "confirmation_token"
  t.datetime "confirmed_at"
  t.datetime "confirmation_sent_at"
end

由于omniauth,我已经覆盖了registrations_controller

应用程序/控制器/registrations_controller.rb

def create
  super
  session[:omniauth] = nil unless @user.new_record?
end

所以我想弄清楚的是……我需要添加什么才能:

  1. 获取用户注册后发送的确认 email

  2. 将用户重定向到一个自定义页面,解释 email 正在等待确认(如果他们在没有确认的情况下再次尝试登录,他们会到达) 在此处回答)

  3. (应该自动处理?)验证用户后将他们重定向到给定页面

更新:现在,当我创建一个用户时,它会自动确认。 这是为什么?

好的,所以我没有意识到我的用户 model 中有以下内容:

def send_confirmation_instructions
  # stops Devise from automatically sending a confirmation email
end

def confirmation_required?
  skip_confirmation!
end

将它们注释掉会发送 email。 如果用户未得到确认,仍在尝试弄清楚如何在登录后重定向。 并试图弄清楚如何正确使用confirmation_required?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM