1

最初の要求でユーザーがセットアップ構成ウィザードに誘導される Rails アプリケーションを作成したいと考えています。このウィザードでは、ActionMailer が使用する電子メール設定を構成する必要があります。SMTP サーバーの設定/資格情報。

ActionMailer の構成エントリをプログラムで更新するにはどうすればよいですか (Application.rb を更新する必要があると思います)。

これらの更新された構成設定を ActionMailer にリロードさせるにはどうすればよいですか? これらの設定の多くがアプリケーションの起動/初期化時に読み込まれることに気付きました。これらの変更を有効にするために Rails アプリケーションを再起動したくありません。

4

1 に答える 1

7

設定をセッションに保存し、AC をフィルター処理する前に内部でこれを実行します。

class ApplicationController < ActionController::Base

    before_filter :set_mailer_settings

    private

      def set_mailer_settings

        ActionMailer::Base.smtp_settings = {
          :address  => session[:smtp_address],
          :port  => session[:smtp_port],
          :domain => session[:smtp_domain],
          :authentication => session[:smtp_authentication],
          :user_name => session[:smtp_user_name],
          :password => session[:smtp_password]
        }

      end

end
于 2012-06-08T12:13:52.573 に答える