1. ホーム
  2. ruby-on-rails

[解決済み】Rails: リンク先のホストが見つからない! パラメータ:hostを指定するか、default_url_options[:host]を設定してください。

2022-04-08 01:43:26

質問

もう90分くらいググっているのですが、まだ答えが出ません。 どこで default_url_options ? すでに config.action_mailer.default_url_options で解決したのですが、今度はRSpecの仕様の中でURLヘルパーを使おうとすると、このエラーが発生するようになりました。 どこでdefault_url_optionsが設定されることを期待しているのか、見当もつきません。

 Failure/Error: listing_url(listing).should match(/\/\d+-\w+$/)
 RuntimeError:
   Missing host to link to! Please provide :host parameter or set default_url_options[:host]
 # ./spec/routing/listing_routing_spec.rb:9:in `block (3 levels) in <top (required)>'

このコードはEメール/ActionMailerとは何の関係もなく、たまたまパスの代わりにURLを必要としただけです。

何かアイデアはありますか?

解決方法は?

Your::Application.routes.draw do
  default_url_options :host => "example.com"

  # ... snip ...
end

のどこかに routes.rb :)