0

実行時に ActionMailer の template_root を設定することは可能ですか? 以下を使用して、開発モードでこれを実行できるようです。

ActionMailer::Base.template_root = my_view_path if File.exists (File.join(my_view_path,"test_mailer"))

メーラーのビュー ディレクトリが特別な view_path に存在するかどうかを確認し、存在する場合は ActionMailer にその view_path を使用しています。それ以外の場合は、デフォルトのままにします。これは、environment.rb の構成時ではなく、要求時に発生します。開発モードで動作します。

これを本番サーバーに移動すると、実行時に、アプリ/ビューで xxx.erb ファイルが見つからないというエラーが表示されます。そのため、特別なビュー パスではなく、デフォルト パスを探しています。デバッグ ステートメントをログに記録しており、template_root が正しく設定されていることがわかりますが、アプリはそれを使用していないようです。

何か案は?

4

1 に答える 1

0

http://www.quirkey.com/blog/2008/08/28/actionmailer-hacking-multiple-template-paths/と私のコメントを参照してください。これは古い質問であることは知っていますが、私は何日もそれで立ち往生していました。これが誰かを助けることを願っています。

于 2010-07-06T11:31:42.130 に答える