Разработать подтверждение по электронной почте не работает на Heroku - PullRequest
1 голос
/ 10 июня 2011

Когда я нажимаю на ссылку в электронном письме с подтверждением, которое отправляет devise, кажется, что он идет по пути, который не распознается моим приложением.

URL выглядит примерно так:

http://glowing -flower-855.heroku.com / пользователей / подтверждение? Confirmation_token = lIUuOINyxfTW3TBPPI

, который выглядит правильно, но, похоже, идет в мой файл 500.html.

Это как-то связано с этим кодом в моей пользовательской модели, который переопределяет метод confirm! Devise:

def confirm!
  UserMailer.welcome_message(self).deliver
  super
end 

По моим логам это ошибка:

2011-06-10T03:48:11+00:00 app[web.1]: ArgumentError (A sender (Return-Path, Sender or From) required to send a message): 
2011-06-10T03:48:11+00:00 app[web.1]: app/models/user.rb:52:in `confirm!'

указывает на эту строку: UserMailer.welcome_message(self).deliver

Вот мой класс почтовой программы:

class UserMailer < ActionMailer::Base
  def welcome_message(user)
    @user = user
    mail(:to => user.email, :subject => "Welcome to DreamStill")
  end
end

1 Ответ

7 голосов
/ 10 июня 2011

Вам не хватает значения "from:", это необходимо для обработки SMTP:

class UserMailer < ActionMailer::Base
  # Option 1
  #default_from "bob@dylan.com"

  def welcome_message(user)
    @user = user
    mail(
      # Option 2
      :from => "paul@mccarthy.com",
      :to => user.email, 
      :subject => "Welcome to DreamStill"
    )
  end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...