0

我想使用url_forwith host set in获取 url development.rb。但不是这个,我得到www.example.com的不是应用程序目录中任何地方的设置。

Connecting to database specified by database.yml
  MOPED: 127.0.0.1:27017 COMMAND      database=admin command={:ismaster=>1} (0.5023ms)
Loading development environment (Rails 3.2.13)
[1] pry(main)> ActionMailer::Base.default_url_options
=> {:host=>"asd:3000"}
[2] pry(main)> app.posts_url
=> "http://www.example.com/posts"
[3] pry(main)> 

有谁知道它为什么以及它来自哪里?

4

2 回答 2

1

我相信这就是 rails 从控制台输出数据的方式。我自己测试了它,在控制台中我得到了同样的结果:

[1] pry(main)> app.projects_url
=> "http://www.example.com/projects"

在我的development.rb文件中,我将我的主机指定为其他东西..

但是,在我的应用程序中,所有路由都解析到正确的位置。

于 2013-11-04T15:51:31.263 回答
0

您在 ActionMailer 下设置了选项,因此它在控制台上下文中不起作用。

example.com 只是 Rails 在不可用时填补空白。

如果要在 development.rb 中获取 url,与控制台上下文相同,请在 development.rb 顶部添加:

Rails.application.routes.default_url_options[:host] = "asd:3000"
于 2018-02-14T08:17:34.123 回答