2011-01-09 4 views
4

Я использую Devise и omniauth для аутентификации в приложении rails. я следовал ридми и поместите следующую строку в моей production.rb:confirm_url указывает на localhost

config.action_mailer.default_url_options = { :host => 
'http://morning-autumn-487.heroku.com' } 

Моя почтовая программа следующий код:

<%= link_to 'Confirm my account',confirmation_url(@user, :confirmation_token => 
@user.confirmation_token) %> 

Когда я загрузить приложение на Heroku, подтверждение почты обладает следующая ссылка для регистрации по электронной почте: http://127.0.0.1:3000/users/confirmation?confirmation_token=8TyGWQo6y ... Есть ли настройка, управляющая этим именем хоста?

ответ

5

Ok проблема в том, что - в setup_mail.rb была строка:

ActionMailer::Base.default_url_options[:host] pointing to localhost:3000 

Спасибо за помощь.

7

Попробуйте с

config.action_mailer.default_url_options = { :host => 'morning-autumn-487.heroku.com' } 
+0

Nopes, все еще получая ссылку как: http://127.0.0.1:3000/users/confirmation?confirmation_token=_j2KgymYYP-a361z15qI – Ved

+0

Это очень странно, это работает для меня (также на Heroku). Также кажется, что у вас есть флаг разработки где-то, поскольку он показывает порт 3000 (порт разработки по умолчанию). Вы уверены, что не тестируете локальный экземпляр по ошибке? –

+0

вы можете попробовать: www.socl.in? попробуйте зарегистрироваться, и вы получите почту, которая даст вам URL-адрес – Ved

Смежные вопросы