投稿元のURLを読み取るようにActionMailerを設定しようとしています。このアプリケーションをデプロイすると、ドメイン名が異なる多くの異なるサーバーに配置される可能性があります。ユーザーにコードを入力してURLを静的に入力させる代わりに、パスワードのリセットURLに、それが生成されたドメイン(http://またはhttps://を含む)を含めたいと思います。
私はメーラー内で試しましたが、結果は出ていませ ん::Rails.root
。未定義のメソッドエラーを生成します。request.host_with_port
::Rails.root_path
request.host_with_port
def reset_password_email(user)
@user = user
@url = "#{::Rails.root_path}/password_resets/#{user.reset_password_token}/edit"
mail(:to => user.email,
:subject => "Your password has been reset")
end