2012-03-25 11 views
2

開発環境でRailsからメールを送信して遊びたい。私のメッセージはレンダリングされています(私はrails consoleを実行中の端末で見ることができます)。 config/development.rbRails 3.0、ActionMailerの配信が機能しない、エラーメッセージが表示されない

私は(はい、ポートが本当に26です)があります。

config.action_mailer.delivery_method = :smtp 
config.action_mailer.perform_deliveries = true 
config.action_mailer.raise_delivery_errors = true 
ActionMailer::Base.smtp_settings = { 
    :address => "mail.mydomain.com", 
    :port => 26, 
    :user_name => "[email protected]", 
    :password => "removed", 
    :authentication => :login 
} 

私はmailers/user_mailerを持っている:

class UserMailer < ActionMailer::Base 
    default from: "[email protected]" 
    def send_an_email 
    mail(:to => "[email protected]", :subject => "Test from Rails") 
    end 
end 

私はviews/user_mailer/send_an_email.text.erbで正しくレンダリングされたばかりの見解を持っています。私はページ要求時にUserMailer.send_an_email.deliverと呼んでいます。

Railsは自分の設定について不平を言っていません。 rails serverコンソール出力にメッセージが表示されます。しかし、私は電子メールを受け取ることはありません。コンソール出力にはエラーメッセージが表示されません(上記のように、raise_delivery_errors = true

+0

私はこの同じ問題を抱えています。あなたはあなたの原因を突き止めることができましたか? – brianvaughn

+0

残念ながら、いいえ。 – Steve

+0

動作していないsmtp接続も同様の動作をします。 – rubish

答えて

6

スティーブ、偶然、この方法をお届け!

mail(:to => "[email protected]", :subject => "Test from Rails").deliver 

私はそれを行うのを忘れ、およびエラーの欠如によってかなり混乱していた。:)

+0

私はもうそのプロジェクトに取り掛かりません。しかし、誰かが反対しない限り、私はこれを受け入れます。 – Steve

+0

配送方法をテストする方法はありますか?だから失敗した場合は、ユーザーをリダイレクトするか、警告することができますか? –

+0

Rails 4#.deliverで廃止され、バージョン5から#deliver.nowを使用する必要があります –

関連する問題