Domanda

Voglio inviare e-mail da un'applicazione Ruby.C'è una chiamata nel linguaggio principale per farlo o c'è una libreria che dovrei usare?Qual'è il miglior modo per farlo?

È stato utile?

Soluzione

Se non vuoi usare ActionMailer Puoi usare Rete::SMTP (per l'effettivo invio) insieme a tmail per creare facilmente email (con più parti, ecc.).

Altri suggerimenti

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")

Io uso il Rete::SMTP biblioteca

Potresti anche considerare di dare un'occhiata a ActionMailer componente fornito come parte di Rails, ma non dipendente da esso.

RubyMail è una libreria per la gestione della posta elettronica per Ruby.

So che questa è una risposta tardiva a questa domanda, ma è stata appena rilasciata:

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

Potrebbe essere utile.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top