【问题标题】:Rails architecture?轨道架构?
【发布时间】:2011-03-16 02:58:34
【问题描述】:

我希望能够阅读 Rails 源代码,但我认为我真的做不到,因为我不知道从哪里开始以及代码的不同部分是如何连接的。例如,很明显 ActiveModel 做了什么,我可以阅读代码,但我不明白 Rails 应用程序通常是如何加载的,ActiveModel 何时开始发挥作用以及 Rails 的哪个部分调用它。

我不是在谈论人们在手册中所说的那些一般的东西,首先 Rack 被加载,然后 Rails 是一个机架应用程序......不。我想要更详细的东西,这样我就可以真正查找代码。所以我猜想用某种图表来解释 Rails 应用程序是如何加载的,并且可能会为每个子目录添加注释,说明这些文件在哪里使用、它们做什么以及它们在加载图表上加载的位置会很好。

有什么建议吗?

【问题讨论】:

    标签: ruby-on-rails architecture


    【解决方案1】:

    Rails 遵循非常传统的 MVC(模型/视图/控制器)设计,您可以继续阅读。

    如果您想大致了解 Rails 如何处理请求,这看起来是一个不错的起点:

    http://betterexplained.com/articles/intermediate-rails-understanding-models-views-and-controllers/

    这里有一篇关于如何加载 Rails 初始化程序和环境的更详细的文章:

    http://toolmantim.com/thoughts/environments_and_the_rails_initialisation_process

    链接坏了,这里是github上的同一篇文章。

    https://github.com/toolmantim/toolmantim/blob/master/articles/environments_and_the_rails_initialisation_process.haml

    【讨论】:

    • 我想我还不够清楚,抱歉。我使用 Rails 已有 2 年多了,当然我知道 MVC 模式是什么,这不是问题(您提供的链接对我来说没有什么新内容)。我想从 Rails 核心开发人员的角度了解更多关于 Rails 的信息。
    • 发布了另一个链接,看起来更像您正在寻找的内容。
    • 不幸的是,第二个链接现在已经失效了——当然这篇文章是从 2010 年开始的,但我非常感谢能获得资源......非常感谢!
    【解决方案2】:

    它还没有完成,但是Andrew Berls 的这一系列文章,Rails from Request to Response 帮助了我:

    1. Introduction
    2. Routing
    3. ActionController

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-08
      • 2020-07-18
      • 2013-06-04
      • 1970-01-01
      • 1970-01-01
      • 2015-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多