我正在使用Devise进行身份验证,而我对如何设置邮件感到困惑。您是否仍在创建自己的邮件程序和初始化程序文件,还是应该通过Devise发送所有邮件?您在Devise的哪个位置创建电子邮件模板和发送电子邮件的方法?
我意识到这是一个广泛的问题,所以基本上我问的是用Devise设置邮件的最佳方法是什么?
此外,如果您想在确认收到电子邮件后向用户发送电子邮件,您会如何做?
答案 0 :(得分:4)
Devise确实创建了自己的Mailer - 如果你看一下GitHub https://github.com/plataformatec/devise/blob/master/app/mailers/devise/mailer.rb,你会发现它已经包含了一堆已经打包的方法。
您可以使用命令
继续生成这些方法的视图rails g devise views
然后编辑它们。
如果您想发送其他电子邮件,则应创建自己的邮件程序。我建议http://edgeguides.rubyonrails.org/action_mailer_basics.html。这是一个很好的概述如何从头开始设置邮件。
答案 1 :(得分:0)
Devise为您创建邮件和电子邮件模板,因此您不必担心。但是,如果要更改电子邮件模板,请使用以下命令安装设备视图:
rails g devise:views
这将在您的视图中添加一个新的“devise”文件夹。您可以在views / devise下的邮件文件夹中找到所有电子邮件模板。
使用确认属性在注册后向用户发送确认电子邮件。 默认情况下,此属性已注释掉。因此,一旦使用命令rails g devise:install安装devise,请转到db / migrate并找到devise_create_users迁移并取消注释以下行:
t.confirmable
和
add_index :users, :confirmation_token, :unique => true
。
完成后,迁移数据库。
现在转到您的用户模型并检查设计是否具有:确认属性,如果没有添加它,则您已全部设置。