gpt4 book ai didi

ruby-on-rails - 创建帖子后发送用户电子邮件,使用 Action Mailer

转载 作者:行者123 更新时间:2023-12-01 07:14:50 25 4
gpt4 key购买 nike

我有一个 User 模型(带有 Devise)和一个属于用户的 Post 模型。我用过 this railscast (pro)创建帐户后向用户发送电子邮件

我创建了一个“NewPostMailer”

这是我的邮件:

class NewPostMailer < ActionMailer::Base
default :from => "email@gmail.com"

def new_post_email(user)
@user = user
@url = "http://localhost.com:3000/users/login"
mail(:to => user.email, :subject => "New Post")
end
end

我的帖子 Controller :
  def create
@post= Post.new(params[:post])

respond_to do |format|
if @deal.save
NewPostMailer.new_post_confirmation(@user).deliver
format.html { redirect_to @post, notice: 'Post was successfully created.' }

后.rb
  after_create :send_new_post_email

private
def send_new_post_email
NewPostMailer.new_post_email(self).deliver
end

在用户创建帖子后,我需要更改什么才能向用户发送电子邮件。谢谢。

最佳答案

创建另一个邮件程序 ( http://railscasts.com/episodes/206-action-mailer-in-rails-3 )

 class YourMailerName < ActionMailer::Base
default :from => "you@example.com"

def post_email(user)
mail(:to => "#{user.name} <#{user.email}>", :subject => "Registered")
end
end

在你的 Post 模型中
 after_create :send_email

def send_email
YourMailerName.post_email(self.user).deliver
end

发送电子邮件非常慢,因此请考虑将其放在后台作业中。

关于ruby-on-rails - 创建帖子后发送用户电子邮件,使用 Action Mailer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13755249/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com