0

我需要更改低級別電子郵件的主題。 什麼軌道是編碼主題引用任何編碼設置。 我需要的是使它被引用,但分爲64字節的塊,因爲hotmail並不符合標準:/控制電子郵件主題in rails

我該如何告訴rails如何使用主題?

回答

1

我一看這是一個跟進我的回答對前一個問題。問題在於TMail。它會自動刪除並從主題回車。我創建了以下猴子補丁,因爲它似乎是阻止TMail行爲的唯一解決方案。

module TMail 
    class SubjectHeaderField < UnstructuredHeader 
    def parse 
     #Do nothing 
    end 
    end 

    class HeaderField 
    FNAME_TO_CLASS = FNAME_TO_CLASS.merge('subject' => SubjectHeaderField) 
    end 
end 

如果你將它包含在Rails 2.3.x的郵件程序中,它應該可以工作。或者你可能想看看http://github.com/mikel/mail/這是Rails 3默認的郵件程序?

然後,您可以在編碼之前設置標題,如前面的答案所示。

+0

謝謝,實際上工作... 但hotmail仍然顯示半行ok和halfed quoted_printable亂碼...... 任何想法爲什麼? – Devenv 2010-08-26 15:53:33

+0

我只能想象它與引用和編碼有關(=?iso-8859-1?Q?content?= \ n [單個空格縮進]其他?=) 我剛剛用我的確切內容從http://stackoverflow.com/questions/3545916/rails-email-subject-is-gibberish-in-hotmail,它似乎工作正常? – 2010-08-27 09:27:31

+0

使用base64編碼工作:/ – Devenv 2010-08-28 12:54:36

1
"This is a very very long subject line of an email that hotmail has problems processing".scan(/.{1,16}/) 
#=> ["This is a very v", "ery long subject", " line of an emai", "l that hotmail h", "as problems proc", "essing"] 

我已經在16個字符完成它,這裏是該文檔的鏈接http://www.ruby-doc.org/core/classes/String.html#M000812

HTH

+0

嘿,謝謝:)但我不是說這個問題,我知道如何分割一個字符串。 問題是,主題是作爲一個行發送,我需要它與\ n在每個32字節後... – Devenv 2010-08-26 14:31:00