刷新配置后的Rails初始化
问题描述:
在environment.rb
,导轨被配置为在初始化块:刷新配置后的Rails初始化
Rails::Initializer.run do |config|
config.action_mailer.smtp_settings = SETTINGS
end
这传播到各种配置设置推入框架类等的ActionMailer :: Base.smtp_settings。
如果我需要重新配置这个Initializer.run块之外,我可以设置:
Rails.configuration.action_mailer.smtp_settings = NEW_SETTINGS
但在这种情况下,它不是在的ActionMailer :: Base.smtp_settings回升。
有没有办法让Rails再次“推”它的更新配置?还是最好直接重新配置ActionMailer :: Base,而不用担心Rails.configuration与它不同步?
答
你应该只使用ActionMailer :: Base类。使用Rails.configuration的要点是能够在加载实际代码之前设置各种选项。如果您之后需要更改某些内容,则不需要使用Rails.configuration。