例えばアプリケーションのトップのURLを文中に記述したいので、メーラクラスに helper :application を記述して、テンプレート内で <%= root_url %> と書くと、「Missing host to link to! Please provide :host parameter or set default_url_options[:host] 」とエラーになります。しょうがないのでメーラクラスの deliver_* メソッドに root_url を引数として追加して、コントローラで生成した root_url を渡すようにしましたが、これだと URL の数だけ引数で渡す羽目になります。きっと、もっとスマートな方法がありそうなので教えていただけませんでしょうか。
ありがとうございます。
読んでみましたが、そのやり方の場合、hostを明示的に指定しないといけないんですよね。コードの記述場所が model なので実行 host の情報が得られないのは当たり前といえば当たり前ですが。
そう考えてみると ActionMailer の view で host の情報が自動的に得られず、コントローラから渡すしかないのも、作りとしては正しいのかもしれないですね……