Tôi đang cố gắng đẩy ứng dụng của mình lên heroku. Tôi vẫn còn trong dev. Tôi sử dụng devise với các mô-đun xác nhận.
Khi tôi cố gắng thêm người dùng bằng bảng điều khiển heroku, tôi đã gặp lỗi này:
Missing host to link to! Please provide :host parameter or set default_url_options[:host]
Trong môi trường thử nghiệm và dev tôi có dòng sau:
môi trường / phát triển.rb và môi trường / test.rb
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
Tôi đã không thiết lập một cái gì đó trong môi trường sản xuất.
Tôi đã cố gắng để đẩy với
config.action_mailer.default_url_options = { :host => 'mywebsitename.com' }
config.action_mailer.default_url_options = { :host => 'heroku.mywebsitename.com' }
nhưng nó không hoạt động quá ..
Tôi thấy trên web rằng nó có thể liên quan đến ActionMailer nhưng tôi không biết mình phải cấu hình cái gì. Rất cám ơn ý tưởng của bạn!
EDITED:
Chào,
Để không làm cho ứng dụng của tôi gặp sự cố khi tôi nhấn heroku, tôi đã đặt ứng dụng này vào env / test.rb và env / dev.rb của tôi (không phải trong env.rb Tôi nghĩ rằng đó là vì đây là ứng dụng rails 3)
config.action_mailer.default_url_options = { :host => 'yourapp.heroku.com' }
Nhưng khi tôi cố gắng tạo người dùng trong bảng điều khiển heroku:
User.create(:username => "test", :email => "test@test.com", :password => "test1234", :password_confirmation => "test1234", :confirmed_at => "2010-11-03 14:11:15.520128")
đây là những lỗi tôi gặp phải:
ActionView::Template::Error: Missing host to link to! Please provide :host parameter or set default_url_options[:host]
/home/slugs/.../mnt/.bundle/gems/ruby/1.8/gems/actionpack-3.0.0/lib/action_dispatch/routing/route_set.rb:473:in `url_for'
/home/slugs/.../mnt/.bundle/gems/ruby/1.8/gems/actionpack-3.0.0/lib/action_dispatch/routing/url_for.rb:132:in `url_for'
/home/slugs/.../mnt/.bundle/gems/ruby/1.8/gems/actionpack-3.0.0/lib/action_view/helpers/url_helper.rb:99:in `url_for'
/home/slugs/.../mnt/.bundle/gems/ruby/1.8/gems/actionpack-3.0.0/lib/action_dispatch/routing/route_set.rb:195:in `user_confirmation_url'
EDITED (2)
Khi tôi nhập nhật ký heroku trên bảng điều khiển, tôi đã nhận được ==> sản xuất.log <== Vì vậy, tôi nghĩ rằng khi một bản khai thác trên heroku thì nó đã được sản xuất.
Tôi cấu hình env / prod.rb như thế này:
config.action_mailer.default_url_options = { :host => 'yourapp.heroku.com' }
và bây giờ tôi gặp lỗi này khi tôi cố gắng tạo Người dùng:
Errno::EAFNOSUPPORT: Address family not supported by protocol - socket(2)
/usr/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:551:in `initialize'
/usr/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:551:in `open'
/usr/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:551:in `do_start'
/usr/ruby1.8.7/lib/ruby/1.8/timeout.rb:62:in `timeout'