1

私はRails 2.3.8アプリを持っており、通知機能はapp/models/hello_notifier.rb次のようになっています:

class HelloNotifier < ActionMailer::Base
    def hello_world
        @recipients = 'to@email.address'
        @from = 'from@email@address'
        @subject = 'Hello world'
    end
end

そして、そのビューはapp/views/hello_notifier/hello_world.erb次のようになります。

Hello
World

を実行したときではなくHelloNotifier.deliver_hello_world、メールを配信しますが、プレーンと HTML のバリエーションを含むマルチパート メールとして配信します。

@content_type = 'text/plain'通知モデルと同様に追加しようとしましたcontent_type 'text/plain'ActionMailer::Base.default_content_type = 'text/plain'また、アクションメーラーの初期化子に追加しようとしました。また、ビューの名前を に変更しようとしましたhello_world.text.plain.erb。私が試したことは何も役に立たないようです。メールは常にマルチパートの html/text メールとして送信されます。

「テキスト/プレーン」として送信するように強制する方法についてのアイデアはありますか?

4

3 に答える 3

0

Rails 2では、次のファイル拡張子のいずれかを指定して、電子メールテンプレートのコンテンツタイプを暗黙的に指定します。

  • プレーンテキストの電子メールの場合は.text.plain.erb
  • HTMLメールの場合は.text.html.erb

たとえば、プレーンテキストの場合は「your_email_template.text.plain.erb」、HTMLの場合は「your_email_template.text.html.erb」です。

参照:http://guides.rubyonrails.org/v2.3.8/action_mailer_basics.html

于 2013-03-03T23:17:06.870 に答える
0

ビューの名前を次のように変更してみてくださいhello_world.text.erb

于 2011-10-05T03:05:18.517 に答える
0

Rails 2.3.8 は、デフォルトのコンテンツ タイプが text/plain の .erb 拡張子を持つテンプレートを検索します。
ファイル名を hello_world.erb に変更してみてください

于 2011-10-05T06:39:52.240 に答える