我已经用谷歌搜索了大约90分钟,但仍然没有答案。我在哪里设置default_url_options
?我已经为config.action_mailer.default_url_options
在其他地方解决了同样的错误,但是现在当我试图在RSpec规范中使用URL helper时,我得到了这个错误。我不知道它期望将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)>'
这段代码与电子邮件/ActionMailer无关,只是碰巧需要一个URL而不是路径。
有什么想法吗?
发布于 2011-08-28 16:22:18
Your::Application.routes.draw do
default_url_options :host => "example.com"
# ... snip ...
end
在routes.rb
中的某处:)
发布于 2012-03-05 06:52:43
发布于 2019-01-16 11:36:25
Rails.application.routes.default_url_options[:host]= 'localhost:3000'
在developemnt.rb / test.rb中,可以更简洁,如下所示:
Rails.application.configure do
# ... other config ...
routes.default_url_options[:host] = 'localhost:3000'
end
https://stackoverflow.com/questions/7219732
复制相似问题