2011-12-03 15 views
0

データベースに改行が保存されているコンテンツがあります。シンプルフォーマットを使用してブラウザでコンテンツを表示すると、内容は改行で表示されます。問題は、電子メールを送信すると、改行が削除され、すべてが1行に表示されることです。ここに私のメーラーは...Rails電子メール - 電子メールに改行が表示されない

def new_announcement(announcement) 
    @announcement = announcement 
    addresses = @announcement.email_list.split(',') 
    mail(:to => addresses, :from => @announcement.from_email, :subject => @announcement.title, :content_type => "text/html") do |format| 
    format.html 
    end 
end 

だ..andその後、私の見解をnew_announcement.html.erb

<!DOCTYPE html> 
<html> 
    <head> 
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" /> 
    </head> 
    <body> 
    <p> 
     <%= simple_format @announcement.content %> 
    </p> 
    <div class="faint-display"> 
     This announcement was sent via the iTeam Announcements page for DA (<%= link_to "http://goto/iteam", "goto/iteam" %>) 
    </div> 
    </body> 
</html> 

に発表のためのコンテンツは、それが中に改行でない方法を1行上に表示されませんブラウザ。私が間違っていることはありますか?ありがとう!

答えて

0

これでわかりました。電子メールビューにはレイアウト(CSSソース)やアプリケーションのヘルパーメソッドがないので、明示的にそれらを記述する必要があることがわかります。これは私が持っていないものであり、素晴らしい作品です!

<!DOCTYPE html> 
<html> 
    <head> 
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" > 
    <style type="text/css" media="screen"> 
     body {font-family: verdana; font-size: 10pt} 
     div {color: gray; font-style:italic; font-size: 8pt} 
    </style> 
    </head> 
    <body> 
    <p> 
     <%= ApplicationController.helpers.simple_format(@announcement.content) %> 
    </p> 
    </body> 
</html> 
0

ほとんどのメールクライアントは、htmlをどのように解釈するかという点でブラウザほど更新されていません。電子メールのビューをコーディングするときは、
タグや残念なことに...テーブルなどの古いテクニックを使用する必要があります。

+0

が合意されていますが、内容に改行が入っています。彼らは最低でも現れるはずです。私はテーブルで残りを修正します。 – absolutskyy

関連する問題