如何获取Rails 3应用程序中所有引擎的列表
根据 Rails 2.x 中的 Rails 引擎扩展功能,可以执行
Rails::Initializer.new(Rails.configuration).plugin_loader.engines
此代码无法在Rails 3
ActionController::RoutingError (undefined method `new' for Rails::Initializer:Module):
config/application.rb:12:in `require_or_load'
我需要在 Rails 3 中做什么才能获得这样的引擎列表?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Rails 4.1 改变了这一点。已接受的答案是弃用的,并获得了为Rails应用程序安装的引擎的新方法:
这是对 github 中的提交的引用 进行更改(并且还显示了在最初弃用后它是如何实现的...)
如果您需要使用 Rails 4.1 中的先前解决方案:
This has changed with Rails 4.1. The accepted answer is deprecated and the new way to get the installed Engines for a Rails application is now:
Here's a reference to the commit in github making the change (and also showing how it was implemented after initial deprecation...)
If you need to use the previous solution from Rails 4.1:
截至 2011 年 5 月 10 日和 Rails 3.1 beta,现在
As of 5/10/2011 and Rails 3.1 beta, it's now
尝试:
Try: