我们可以在db中存储smtp设置并获取它们并在环境/ * .rb文件中使用以在运行时使用smtp吗?
由于
答案 0 :(得分:1)
以常规方式,这是不可能的,因为在应用程序启动时加载了环境/ * .rb,并且您无法在运行时更改它。
您可以使用一些可在运行时配置的邮件gem。
答案 1 :(得分:1)
是的,你可以。查看http://guides.rubyonrails.org/action_mailer_basics.html#sending-emails-with-dynamic-delivery-options
class UserMailer < ApplicationMailer
def welcome_email(user, company)
@user = user
@url = user_url(@user)
delivery_options = { user_name: company.smtp_user,
password: company.smtp_password,
address: company.smtp_host }
mail(to: @user.email,
subject: "Please see the Terms and Conditions attached",
delivery_method_options: delivery_options)
end
end