我差不多完成了一个Ruby论坛应用程序。我只有一个问题:当用户被发送时,重置密码说明并点击"忘记了我的密码",我看到了这个错误:
Showing C:/ruby/lib/ruby/gems/2.1.0/gems/devise-3.4.1/app/views/devise/mailer/reset_password_instructions.html.erb where line #5 raised:
Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true
我该怎么办?
答案 0 :(得分:1)
您似乎需要在环境中指定host
。
所以,在你的production.rb
文件中,你需要这样的东西:
config.action_mailer.default_url_options = { host: www.yourhostname.com }
和development.rb
中的内容如下:
config.action_mailer.default_url_options = { host: "dev.yourhostname.com" }
以及适用于您的测试环境。
来自docs的一些信息。
答案 1 :(得分:0)
您的错误消息是:
缺少主机链接!请提供:host参数,设置default_url_options [:host],或将:only_path设置为true
在config.action_mailer.default_url_options
中,您需要设置:host
参数,以便服务器知道如何链接回自身。服务器不知道要使用的域名或IP地址。
所以在config/production.rb
尝试设置这样的内容:
config.action_mailer.default_url_options = { host: 'www.example.com' }