rails邮件发送、附件

CONTROLLER
def sebdemail
@cad_employ=CadEmploy.find(params[:cad_employ_id])
from = @cad_employ.cad_email.from
employ =params[:cad_employ_id]
recipient =params[:recevier]
subject = params[:title]
message = params[:cad_email][:content]
Emailer.deliver_contact(recipient, from, subject,employ, message)
return if request.xhr?
render :text => '邮件已发送成功'
end

MODEL
class Emailer < ActionMailer::Base
def contact(recipient,from, subject, employ, message, sent_at = Time.now)
@subject = subject #标题
@recipients = recipient #接收者
@from ='career@caar.edu.cn' #发邮件人
@sent_on = sent_at #发送时间
@body["message"] = message#信息
@headers = {}
#发送附件
@data = ""
File.open("#{RAILS_ROOT}/public/play.jpg", "rb").each { |fp| @data<<fp }
attachment :content_type =>"application/vnd.ms-excel",
:filename => "play.jpg" ,
:body => @data
end
end

ENVIROMENT

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
:address => "***",
:port => 25,
:domain => "***"
# :authentication => :login,
# :user_name => "***",
# :password => "***"
}

另外要加一个contact.html.erb传送模板。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值