我需要通过Ruby发送附件附件的电子邮件。
一直在搜索,但没有找到任何简单的脚本示例来执行此操作。
最近我发现是ActionMailer但似乎需要运行一堆其他脚本。 (注意:我没有使用Ruby on Rails)
答案 0 :(得分:17)
你签出了Mail吗?这就是Rails 3中新的ActionMailer API构建的基础。
“Mail是Ruby的互联网库,旨在以简单的rubyesque方式处理电子邮件的生成,解析和发送。”
以下是文档中的一个简单示例:
require 'mail'
@mail = Mail.new
file_data = File.read('path/to/myfile.pdf')
@mail.attachments['myfile.pdf'] = { :mime_type => 'application/x-pdf',
:content => file_data }
更新:或者更简单:
@mail = Mail.new
@mail.add_file("/path/to/file.jpg")
答案 1 :(得分:1)
完整文档:here
require 'mail'
Mail.deliver do
from "bob@example.com"
to "alice@example.com"
subject "Email with attachment"
body "Hello world"
add_file "/path/to/file"
end
答案 2 :(得分:1)
通过" mail"使用任何类型的附件发送电子邮件或电子邮件变得更加简单宝石安装。
步骤:1安装" mail"宝石
步骤:2在ruby文件中维护下面给出的语法:
require 'mail'
def mailsender
Mail.defaults do
delivery_method :smtp,{ address: "<smtp_address>",openssl_verify_mode: "none" }
end
Mail.deliver do
from 'from_mail_id'
to 'to_mail_id'
subject 'subject_to_be_sent'
# body File.read('body.txt')
body 'body.txt'
add_file '<file_location>/Word Doc.docx'
add_file '<file_location>/Word Doc.doc'
end
end
步骤:3现在只需在步骤定义中调用方法。