如何根据Rails应用程序的用户更改发送者电子邮件凭据



我想根据轨道中的应用程序的用户给予不同的发送者电子邮件凭据,该应用程序将从数据库中获取。

如果您使用的是ActionMailer,则可以从':

设置':
fetch_sender = Object.select(:email, :name).find(id)
mail(from: "#{fetch_sender.name} <#{fetch_sender.email}>", to: 'Receiver <example@receiver.com>', subject: 'Something')

ActionMailer类的示例:

app/mailers/custom_mailer.rb

class CustomMailer < ApplicationMailer
  def custom(sender, receiver)
    mail(from: "#{sender.name} <#{sender.email}>", to: "#{receiver.name} <#{receiver.email}>", subject: 'Something')
  end
end

发送

CustomMailer.custom(sender, receiver).deliver

p.s。如果您有sidekiq或其他东西,则可以使用 deliver_nowdeliver_later

最新更新