我正在处理一个相当传统的忘记密码电子邮件 - 我想通过电子邮件向用户发送一个嵌入在链接中的密码更改令牌,他们可以单击该链接来更改密码。我通过传统的 ActionMailer 发送电子邮件。
如果我使用普通的 link_to 标签
<%= link_to "click here", :controller => foo, :action => 'bar', :token => token %>
我从电子邮件中获得了一个相对链接 - 相当无用。
如果我添加
:only_path => false
,然后它错误说我需要设置default_url_options[:host]
. ActionController 文档暗示您可以通过覆盖控制器中的 #default_url_options 方法来做到这一点。当然有一个配置选项可以告诉 Rails 它的主机名是什么,而无需添加我自己的配置文件、解析它等?