Ruby on rails 用邮件形式发送感谢信息
我目前正在使用mail_form+simple_form gems在用户在我的网站上提交“联系我们”表单后向自己发送电子邮件。然后,我还将这些字段提交到数据库。这里一切正常 我想能够发送第二封电子邮件到用户的电子邮件地址与“谢谢”的消息和一些其他副本后直接提交。我知道可以使用flash发布消息,但在我的情况下,给用户发送电子邮件会更好 有人能根据下面的代码提供一些指导吗?谢谢 型号:page.rbRuby on rails 用邮件形式发送感谢信息,ruby-on-rails,email,mail-form,Ruby On Rails,Email,Mail Form,我目前正在使用mail_form+simple_form gems在用户在我的网站上提交“联系我们”表单后向自己发送电子邮件。然后,我还将这些字段提交到数据库。这里一切正常 我想能够发送第二封电子邮件到用户的电子邮件地址与“谢谢”的消息和一些其他副本后直接提交。我知道可以使用flash发布消息,但在我的情况下,给用户发送电子邮件会更好 有人能根据下面的代码提供一些指导吗?谢谢 型号:page.rb class Page < ActiveRecord::Base include Mail
class Page < ActiveRecord::Base
include MailForm::Delivery
attribute :name, :validate => true
attribute :company
attribute :email, :validate => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i
attribute :message
attribute :nickname, :captcha => true
def headers
{
:subject => "New Lead from Composites First",
:to => "myemail@myemail.com",
:from => "myemail@myemail.com"
}
end
end
class页面true
属性:公司
属性:email,:validate=>/\A([^@\s]+)@((?:[-A-z0-9]+\)+[A-z]{2,})\z/i
属性:消息
属性:昵称:验证码=>true
def标题
{
:subject=>“来自复合材料的新潜在客户第一”,
:to=>“myemail@myemail.com",
:from=>”myemail@myemail.com"
}
终止
终止
控制器:第页\u Controller.rb
class PagesController < ApplicationController
def index
end
def basicform
@page = Page.new
end
def create
@page = Page.create(page_params)
if @page.save
respond_to do |format|
format.html { redirect_to '/' }
format.json { }
end
else
respond_to do |format|
format.html { }
format.json { }
end
end
@page.request = request
if @page.deliver
else
flash[:error] = 'Cannot send message.'
format.html { redirect_to '/' }
end
end
private
def page_params
params.require(:page).permit(:name, :company, :email, :message)
end
end
class PagesController
您可以在创建回调后编写,以触发感谢电子邮件
在页面模型中写入回调,如下所示:
after_create :send_thank_you_email
def send_thank_you_email
email = self.from
MyMailer.send_thank_you_email(email).deliver_now
end
现在在MyMailer
writesend\u thanky\u you\u email
操作中,为感谢邮件创建邮件视图。希望这有帮助。谢谢