Вопрос

Я хочу отправить электронное письмо из приложения Ruby.Есть ли в базовом языке вызов для этого или есть ли библиотека, которую мне следует использовать?Как лучше всего это сделать?

Это было полезно?

Решение

Если вы не хотите использовать ActionMailer вы можете использовать Сеть::SMTP (для фактической отправки) вместе с tmail для простого создания электронных писем (состоящих из нескольких частей и т. д.).

Другие советы

require 'net/smtp'
SMTP_SERVER = 'mailserver01' #change to your server

def send_emails(sender_address, recipients, subject, message_body)
    recipients.each do |recipient_address|
        message_header =''
        message_header << "From: <#{sender_address}>\r\n"
        message_header << "To: <#{recipient_address}>\r\n"
        message_header << "Subject: #{subject}\r\n"
        message_header << "Date: " + Time.now.to_s + "\r\n"
        message = message_header + "\r\n" + message_body + "\r\n"
        Net::SMTP.start(SMTP_SERVER, 25) do |smtp|
            smtp.send_message message, sender_address, recipient_address
        end
    end
end
send_emails('sender@domain.com',['recip1@test.com', 'recip2@other.com'],'test Email',"Hi there this is a test email hope you like it")

Я использую Сеть::SMTP библиотека

Вы также можете рассмотреть возможность взглянуть на ActionMailer компонент, который поставляется как часть Rails, но не зависит от него.

Рубиновая почта — это библиотека обработки электронной почты для Ruby.

Я знаю, что это поздний ответ на этот вопрос, но это было только что выпущено:

http://adam.blog.heroku.com/past/2008/11/2/pony_the_express_way_to_send_email_from_ruby/

Может быть полезно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top