tôi xác định một phương pháp phân phối tùy chỉnh, và tải nó trong một initializer:Tại sao Rails không nhận được phương thức gửi thư tùy chỉnh của tôi?
ActionMailer::Base.add_delivery_method :custom, CustomDelivery
sau đó tôi đã thêm config.action_mailer.delivery_method = :custom
cho cả development.rb và production.rb.
Nhưng khi tôi muốn gửi một e-mail
UserMailer.authorize(user).deliver
Nó không thành công với một cái gì đó liên quan đến SMTP (ArgumentError: A sender (Return-Path, Sender or From) required to send a message from /Users/me/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/mail-2.4.4/lib/mail/network/delivery_methods/smtp.rb:99:in deliver!'
) - mà tôi không muốn sử dụng.
Tại sao nó không chọn phương thức phân phối tùy chỉnh?
UPDATE: Khi tôi cố gắng từ giao diện điều khiển, tôi nhận thấy như sau:
irb(main):019:0> UserMailer.delivery_method
=> :custom
irb(main):020:0> UserMailer.authorize(user).delivery_method
=> #<Mail::SMTP:0x00000100bdc738 @settings={:address=>"localhost", :port=>25, :domain=>"localhost.localdomain", :user_name=>nil, :password=>nil, :authentication=>nil, :enable_starttls_auto=>true, :openssl_verify_mode=>nil, :ssl=>nil, :tls=>nil}>
(Btw Tôi đã tìm kiếm cho "SMTP" trong dự án của tôi và có 0 lần xuất hiện)
Bất kỳ may mắn nào với điều này? Tôi muốn viết một delivery_method tùy chỉnh để sử dụng API SendGrid – Shane