質問

電子メールの主題を低レベルで変更する必要があります。 Railsが行うことは、エンコードが設定されているもので引用されているように、主題をエンコードすることです。私が必要とするのは、それを引用することですが、64バイトのチャンクに分かれています。HotMailは実際には標準には適合していないからです。

Railsに、そのように主題を取るように言うにはどうすればよいですか?

役に立ちましたか?

解決

私はこれを前の質問に対する私の答えのフォローアップとして見ていました。問題は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のデフォルトのメーラーはどれですか?

次に、前の回答が示すようにエンコードする前にヘッダーを設定できます。

他のヒント

"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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top