Rails 3: настройки SMTP для Google Apps / Heroku - PullRequest
6 голосов
/ 31 октября 2010

Вот мои настройки smtp для Служб Google в setup_mail.rb.

  :address              => "smtp.gmail.com",  
  :port                 => 587,                 
  :domain               => 'mysite.co',  
  :user_name            => 'noreply@mysite.co',      
  :password             => 'password',      
  :authentication       => 'plain',             
  :enable_starttls_auto => true

В моих журналах разработки подробно показаны сгенерированные и отправленные электронные письма на правильный адрес электронной почты ... но они не приходят. Я могу только думать, что должно быть что-то не так с настройками выше. Вы видите, в чем проблема?

Как только это будет решено, возникнет ли у меня какая-либо проблема с тем, чтобы заставить его работать на Heroku?


Примечание: приведенное выше записывает предупреждение об устаревании:

DEPRECATION WARNING: Giving a hash to body is deprecated, please use instance va
riables instead. (called from process at C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gem
s/actionmailer-3.0.0/lib/action_mailer/old_api.rb:77)

Ответы [ 4 ]

5 голосов
/ 21 ноября 2011

в вашем пользовательском контроллере не забудьте добавить .deliver

UserMailer.registration_confirmation(@user).deliver

это то, что поставило меня в тупик

5 голосов
/ 04 мая 2011

Я думаю, что если вы используете rails 3, правильный подход к настройке почты будет заключаться в следующем railscasts на action mailer.

2 голосов
/ 03 ноября 2010

Оказалось, что проблема была в другом месте - старый учебник по AuthLogic указывал мне правильное направление при отправке кодов активации, но неверное направление при отправке самих электронных писем. Rails генерировал электронную почту, но не отправлял ее, потому что код mail_helper не был последним шагом.

Если вы читаете это в ретроспективе, то, что я узнал: убедитесь, что в вашем Rails 3.0 user_mailer есть (или что-то подобное):

mail(:to => "#{user.login} <#{user.email}>", :subject => "Registered" )
0 голосов
/ 31 октября 2010

Я не использовал rails3, но помню чтение , что отправленные электронные письма в процессе разработки отправляются отправителю. Предупреждение об устаревании связано с тем, что вы определяете переменные для шаблона электронной почты в предыдущем формате хэша. Rails 3 работает иначе . По моему опыту, развертывание на heroku работает безупречно, но вам нужно будет определить mx records .

...