从模型绑定动作邮件程序smtp设置

时间:2010-08-20 17:23:30

标签: ruby-on-rails smtp actionmailer

现在我已经在environment.rb文件中设置了我的所有smtp设置。

我已将我的所有设置存储在数据库中。

我想从我的模型中绑定smtp设置。

我如何从模型中动态绑定这些设置?

2 个答案:

答案 0 :(得分:4)

答案 1 :(得分:1)

class UserMailer < ActionMailer::Base

   UserMailer.smtp_settings = {
      :tls            => Model.find_by_column_name("SMTP_TLS").column_name,
      :address        => Model.find_by_column_name("SMTP_ADDRESS").column_name,
      :port           => Model.find_by_column_name("SMTP_PORT").column_name,
      :domain         => Model.find_by_column_name("SMTP_DOMAIN").column_name
   }

  def mail_example(to_address,subject,options={})
    sender(to_address,subject,options)
  end

  def sender(to_address,subject,options)
    recipients to_address
    from Model.find_by_column_name("SMTP_FROM_ADDRESS").column_name
    subject subject
    sent_on Time.now
    body options
  end
end

我创建了一个常见的发送者功能。 可能会有所帮助。