سؤال

أريد إرسال بريد إلكتروني من تطبيق روبي.هل هناك دعوة في اللغة الأساسية للقيام بذلك أم أن هناك مكتبة يجب أن أستخدمها؟ما هي الطريقة الأفضل لعمل هذا؟

هل كانت مفيدة؟

المحلول

إذا كنت لا تريد استخدامها ActionMailer يمكنك استخدام صافي::SMTP (للإرسال الفعلي) مع com.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 ولكنه لا يعتمد عليه.

روبي ميل هي مكتبة للتعامل مع البريد الإلكتروني لروبي.

أعلم أن هذه إجابة متأخرة على هذا، ولكن تم إصدار هذا للتو:

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

من الممكن ان يكون مفيدا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top