タイトルが示すように、メーラーテンプレートでlink_to
を使用しようとすると、次のエラーが発生します。
ActionView::Template::Error: Missing Host to link to! Please provide the :Host parameter, set default_url_options[:Host], or set :only_path to true
指示に従おうとすると、 この投稿 も見つかりましたが、それでもエラーが発生します。
次の各ファイルにconfig.action_mailer.default_url_options = { Host: 'example.com' }
を追加しようとしましたが、どれも機能しませんでした。
/config/environment.rb
/config/application.rb (inside the module for my app)
/config/development.rb (I'm in development mode)
Rails 4で、これが異なる動作をする何かが変更されましたか?
私は先日この問題に遭遇しました、そしてこれは私のために働いてしまったものです:
Rails.application.routes.default_url_options[:Host] = '???'
編集
これは各環境ファイルに含まれます-development.rb
、test.rb
およびproduction.rb
(およびそれらがある場合はそれ以上)それぞれに対応するホスト名
各環境(開発、テスト、本番)でdefault_urlを設定する必要があります。
これらの変更を行う必要があります。
config/environments/development.rb
config.action_mailer.default_url_options =
{ :Host => 'your-Host-name' } #if it is local then 'localhost:3000'
config/environments/test.rb
config.action_mailer.default_url_options =
{ :Host => 'your-Host-name' } #if it is local then 'localhost:3000'
config/environments/development.rb
config.action_mailer.default_url_options =
{ :Host => 'your-Host-name' } #if it is local then 'localhost:3000'