首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Rails:缺少要链接的主机!请提供:host参数或设置default_url_options[:host]

Rails:缺少要链接的主机!请提供:host参数或设置default_url_options[:host]
EN

Stack Overflow用户
提问于 2011-08-28 16:02:16
回答 12查看 124.3K关注 0票数 216

我已经用谷歌搜索了大约90分钟,但仍然没有答案。我在哪里设置default_url_options?我已经为config.action_mailer.default_url_options在其他地方解决了同样的错误,但是现在当我试图在RSpec规范中使用URL helper时,我得到了这个错误。我不知道它期望将default_url_options设置在哪里。

代码语言:javascript
复制
 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而不是路径。

有什么想法吗?

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2011-08-28 16:22:18

代码语言:javascript
复制
Your::Application.routes.draw do
  default_url_options :host => "example.com"

  # ... snip ...
end

routes.rb中的某处:)

票数 84
EN

Stack Overflow用户

发布于 2012-03-05 06:52:43

主机应在每个环境的配置文件中指定。例如:

代码语言:javascript
复制
config/environments/development.rb

参见this questionthis question

票数 45
EN

Stack Overflow用户

发布于 2019-01-16 11:36:25

Rails.application.routes.default_url_options[:host]= 'localhost:3000'

在developemnt.rb / test.rb中,可以更简洁,如下所示:

代码语言:javascript
复制
Rails.application.configure do
  # ... other config ...

  routes.default_url_options[:host] = 'localhost:3000'
end
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7219732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档