mailer作成 その8
※7月11日に書いたはずの「mailerの作成 その7」がない。なぜだ?
単純なテキストメールとHTMLメール(multipartでないもの)もiframeの中に表示するようにしてみたが、HTMLメールが文字化けする。内容がUTF-8で書かれているのに、metaタグのcharsetがjis-2022-jpになっているためと思われる。HTMLメールは、いったんパーズして、metaタグのcontent属性を直してやらないとだめか?
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
あるいは、ファイルを作るときに、jis-2022-jpにコード変換してやるか?
7月13日追記:
上の内容を書いた直後に、さっそく本文をjisに変換する方法を実験してみたら、とりあえず、うまく表示できた。
def createSingleHtml filename = "public/" + @tmpdir + '/html_body.html' if @type.upcase == "TEXT" && @subtype.upcase == "HTML" File.open(filename, "wb") {|fd| fd.write(@body.tojis) } else File.open(filename, "wb") {|fd| fd.write("<html><body><pre>\n") fd.write(@body) fd.write("</pre></body></html>\n") } end end
このcreateSingleHtmlは、list_controllerのshowメソッドから呼ばれる。