Rails 3:在单独的模块中访问polymorphic_url方法

时间:2014-02-14 10:25:43

标签: ruby-on-rails ruby-on-rails-3 module

我知道我可以在url_helpers这样的单独模块中调用lib/utils.rb

module Utils
  def self.get_url(object=nil)
    if object.nil?
      return Rails.application.routes.url_helpers.root_url
    else
      return Rails.application.routes.url_helpers.polymorphic_url(object)
    end
  end
end

如何访问polymorphic_url?有了这段代码,我得到了:

undefined method `polymorphic_url' for #<Module:0x00000004be0128>

我正在使用Rails 3.2。

由于

1 个答案:

答案 0 :(得分:3)

您应该就此类问题咨询APIdocks。根据Rails版本,您可以在几个不同的地方找到polymorphic_url

  1. Rails 4
  2. Rails 3
  3. 对于Rails 4,您需要做的就是在模块/类中包含适当的模块:

    include ActionController::PolymorphicRoutes
    

    就是这样!