一千萬個為什麽

搜索

如何在rails中為url helpers設置默認主機?

我想做這樣的事情

config.default_host = 'www.subdomain.example.com'

in some of my configuration files, so that object_url helpers (ActionView::Helpers::UrlHelper) produce links beginning with http://www.subdomain.example.com

我試圖搜索文檔,但除了 ActionMailer docs和 http://api.rubyonrails.org/classes/Rails/Configuration.html 這對我沒用,因為我不知道要看哪個。有沒有描述Rails :: Initializer.config整個結構的地方?

最佳答案

asset_host doesn't work for urls

您需要覆蓋 ApplicationController 中的 default_url_options (至少在Rails 3中)

http://edgeguides.rubyonrails.org/action_controller_overview.html#default-url-選項

class ApplicationController < ActionController::Base
  def default_url_options
    if Rails.env.production?
      {:host => "myproduction.com"}
    else  
      {}
    end
  end
end

轉載註明原文: 如何在rails中為url helpers設置默認主機?