ActionMailerで日本語のメールを送る方法

現時点 (2009/6/24, Rails 2.3.2)で、ActionMailerで日本語のメールを送る方法を整理してみました。

http://www.fuchu.or.jp/~tenshi/1kb/sozai/gif/icon/mail/aicon383.gif

1. UTF-8対応のメールソフトに限定できる場合

Rails 2.3.2の ActionMailer で何も考えずにメールを送ると UTF-8コードでメールが送信されます。 UTF-8コードが正しく扱えるメーラーであれば、本文、サブジェクト、To:, From: に日本語が含まれていても問題なく送れます。

したがって、イントラネットなどで、メールを送る先がUTF-8対応のメーラのみに限定できる場合は これでも良いかもしれません。
UTF-8対応のメーラは Unicode(UTF-8)への各種メールソフト対応調査 で判ります。古いソフトでなければ Windows/Macはだいじょぶそうです。

2. ActionmailerJa プラグインを使う

ActionmailerJaをインストールすると、特別な設定を行わずに iso-2022-jpで日本語メールを送れます。 作者の kusakariさんに感謝です!

また、ActionmailerJaは携帯用のメールや機種依存文字にも対応しています。詳しくは http://github.com/kusakari/actionmailer_ja/tree/master を見て下さい。

3. Ruby-GetTextを使う

Rails 2.1.X までは日本語でエラーメッセージ等を表示しようとすると必ず Ruby-GetTextをインストールしていたと思います。GetTextを使えば簡単に iso-2022-jpで日本語メールを送れます。私は試した事がありませんがネット上に情報はたくさんあります。