在哪里可以查看 Rails 控制器高级超类?

Where can I look at the Rails controller high-level superclasses?

我正在尝试使用 Rails 控制台了解 Rails 的一些高级功能。我 运行 controller.class.superclass.superclass 给出 ActionController::Basecontroller.class.superclass.superclass.superclass 给出 ActionController::Metalcontroller.class.superclass.superclass.superclass.superclass 给出 AbstractController::Base.

我在 API 文档中找到了这些。

http://api.rubyonrails.org/classes/AbstractController/Base.html http://api.rubyonrails.org/classes/ActionController/Metal.html

[只能post两个链接]

我可以通过在控制台中再次声明 类 来简单地添加这些内容,但是有没有办法找到这些内容的原始 Ruby 代码并在其原始内容中检查和编辑它文件?以防万一我以后需要知道这些的全部内容。

您可以在 Github 上查看 Rails 源代码:

https://github.com/rails/rails/tree/master/actionpack/lib/action_controller

您还可以这样做:

bundle show <gem>

这将向您显示 gem 在您系统上的位置。除非您知道如何重新安装 gems,否则不建议编辑这些文件。