Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 开始学习Rails源代码_Ruby On Rails_Open Source - Fatal编程技术网

Ruby on rails 开始学习Rails源代码

Ruby on rails 开始学习Rails源代码,ruby-on-rails,open-source,Ruby On Rails,Open Source,最近,我在很多项目中使用了RubyonRails,我想看看Rails的源代码并真正了解它下面的工作方式会很有趣。我认为这将是一次很好的学习体验,可能会进一步提高我编写Rails应用程序的方式 有人对如何开始有什么建议吗?在Rails源代码中,应用程序从哪里开始执行?也许如果我从那里开始,我可以看到所有东西都是如何加载和工作的。那么 guides.rubyonrails.org railscasts.com 有一个关于Rails(3.0)初始化过程的指南: 我认为这将是一次伟大的学习 经验和经验

最近,我在很多项目中使用了RubyonRails,我想看看Rails的源代码并真正了解它下面的工作方式会很有趣。我认为这将是一次很好的学习体验,可能会进一步提高我编写Rails应用程序的方式

有人对如何开始有什么建议吗?在Rails源代码中,应用程序从哪里开始执行?也许如果我从那里开始,我可以看到所有东西都是如何加载和工作的。

那么

  • guides.rubyonrails.org
  • railscasts.com

有一个关于Rails(3.0)初始化过程的指南:

我认为这将是一次伟大的学习 经验和经验可能会提高 我编写Rails应用程序的方式 更多

这是个好主意

你应该首先从(这里是)开始。如果您使用的是Rails,您可能很熟悉Rails本身是由几个不同的gem组成的:

立即跳入代码并不是那么简单。我建议您使用两种替代方法开始深入研究Rails代码库:

  • 养成这样的习惯,无论何时使用方法、助手或Rails命令跳转到源代码中查找方法并阅读它。试着理解它的上下文,它是如何工作的,以及它使用了哪些方法/库。然后,每次方法A使用方法B时,开始回溯并查找方法B。设置反向查找的数量限制,例如2个更高级别,这样您就不会从
    链接到
    帮助程序开始查找整个框架

  • 选择您最熟悉的库,而不是从存储库的顶部开始。如果您没有任何偏好,请从ActiveSupport开始。ActiveSupport是Rails工具包。它提供了大量扩展,您可以在Rails代码甚至Ruby程序中使用

您需要一段时间才能整合所有信息并了解单个Rails应用程序的工作原理,但这绝对值得您付出努力


作为补充说明,几个月前我开始了一个名为的系列。你可能想看一看。

我参加聚会迟到了。 如果您对ActionDispatch(将请求路由到控制器)感兴趣,文档“Rails on Rack”是一个很好的起点

对于当前主分支,您需要边向导

本文帮助您理解rails和rack之间的关系。一旦您了解了rack,您就可以找出请求rails框架的入口点。(rack应用程序接口的rails实现)


您可以沿着入口点一直走到控制器。这就是我所做的。

更多的是学习Rails,而不是Rails源代码。这张图片提供了Rails架构的大致概述。东西从调度器开始,您可以在代码中从那里开始跟踪您的路径-提供的链接不再工作。是否有可能更新或删除?谢谢