[Ruby on Rails]Rails 3使用ActionMailer通过163发送邮件

最近用到发送邮件的功能,没办法只能现学,天生愚钝啊,用了两天才弄明白了。。记录一下
---------------------------------------------------
在models 里边新建一个mailer 模型

class Notifier < ActionMailer::Base
      def send_mail(params = {})
         load_settings_default
        @mail_body = params[:mail_body]
        mail(:subject => params[:subject],
               :to =>"*****@***.com",
               :from => '*****@163.com',
               :date => params[:date]
               )
     end
end
  
*subject主题.
    * body 是Ruby的hash结构。你可以创建三个值对title, email, message
    * recipients接受邮件的地址列表
    * from发件人地址列表.
    * sent_on发送时间.
    * headers是另外的hash结构标识header信息如,配置MIME typeplain text 或 HTML

---------------------------------------------

然后在controller 里边引用model中的方法
Notifier.send_mail({:subject => "subject", :mail=>"×××××××@###.com",:date => Time.now, :mail_body => "mail_body"}).deliver

(格式内容仅供参考)
上边是Rails3的调用方法之前版本的可以试一下:

Notifier.deliver_send_email({:subject => "subject", :mail=>"×××××××@###.com",:date => Time.now, :mail_body => "mail_body"})

--------------------------------------

最后在environment.rb里边设置发送邮件服务器

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
    :address => "smtp.163.com",
    :port => 25,
    #:domain => "www.163.com",
    :authentication => :login,
    :user_name => "*******@163.com",
    :password => "*******"   #用户名和密码是163邮箱的,需要验证
}

(位置要注意,放在最后的End后边或是environment.rb文件的最后)
---------------------------------------------------------
以上仅仅是个人总结的内容,如有误导大家,请见谅;有错误请指出~谢谢!

转载于:https://www.cnblogs.com/royshj/archive/2013/03/07/2947737.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值