2014-12-02 76 views
1

在Rails 3中,我可以通过调用 MyEngine::Engine.class.mounted_path来区分已安装(或可安装)的引擎与“其他”引擎。这在Rails 4中不起作用。基于此question,railties似乎已被弃用。Rails 4列表安装引擎

如何区分Rails 4中的可挂载引擎?

回答

0

我用建议找到here来创建我自己的mounted_path方法。

我把在初始化文件中的以下内容:

class Rails::Engine 
    def self.mounted_path 
    route = Rails.application.routes.routes.detect do |route| 
     route.app == self 
    end 
    route && route.path 
    end 
end 

还在寻找更好的答案。

1

Rails::Engine.subclasses

这将返回安装的发动机。

+0

这将返回所有引擎,例如Coffee,Turbolinks和Devise。我指的是你自己的自定义挂载引擎,如http://edgeguides.rubyonrails.org/engines.html所示 – RailinginDFW 2016-01-12 18:02:28