设计发送欢迎电子邮件 [英] Devise Sending Welcome Email

查看:107
本文介绍了设计发送欢迎电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个名为 members 的设计模型,我正在使用可确认的设计.确认后,我想向用户发送欢迎电子邮件

I have a devise model called members i am using devise confirmable. Upon confirm i want to send a welcome email to the User

class Member < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable, :confirmable

  # Methods

  # Override devise confirm! message
  def confirm!
    welcome_email
    super
  end

  # Private Methods
  private

  def welcome_email
    MemberMailer.welcome_email(self).deliver
  end

end

我的MemberMailer驻留在 mailers/brands/member_mailer.rb

My MemberMailer resides in mailers/brands/member_mailer.rb

class Brands::MemberMailer < ApplicationMailer

  # Send Welcome Email once Member confirms the account
  def welcome_email(member)
    @member = member
    mail(to: @member.email, subject: "Welcome to Skreem! Now you Rock!")
  end
end

但是通过邮件链接确认后,确认!未被覆盖,并且我没有收到任何错误或电子邮件.

But upon confirming through the mail Link the confirm! is not being overridden and I am not getting any error or email.

推荐答案

将此添加到您的成员模型中:

Add this to your Member model:

def after_confirmation
  welcome_email
end

有关更多信息,请检查 after_confirmation strong>

For more info check after_confirmation

@Pavan感谢您指出这一点.

@Pavan thanks for pointing this.

您的 welcome_email 应该是:

def welcome_email
  Brands::MemberMailer.welcome_email(self).deliver
end

这篇关于设计发送欢迎电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆