阅读示例项目的源代码,如Beast和Bort,被推荐为学习rails的好方法。但是我发现自己迷失在阅读这些项目的源代码中,导致包含的插件可能会带来一些奇怪的代码而没有任何提示,例如"require"
或"include"
。你能分享你的导轨代码阅读体验吗?很多感谢。如何阅读Rails示例项目的源代码?
回答
学习使用rails时,需要知道的最重要的事情之一是它如何加载您编写的代码。假设你在app/controllers/demo/sub目录中有一个HelloController。如果您生成此控制器,它将具有Demo :: Sub :: HelloController的正确名称。
当你的路径告诉rails寻找“demo/sub/hello”时,它被转换为控制器的全名(Demo :: Sub :: HelloController),它们会尝试调用哪个rails。 Ruby无法找到这个类并调用const_missing,这使得rails将名称转换为文件,在这种情况下,demo/sub/hello_controller(:: = /,除first = _以外的首都,在下划线方法下查找Inflections)。然后Rails需要这个文件并检查正确的类定义。
Rails在ruby的加载路径(app/controllers,app/models,app/helpers,lib,vendor)中添加了几个目录,其中任何目录下的demo/sub/hello_controller.rb都将满足要求。但不在应用程序/控制器中的控制器需要特别注意那里的意见。
此外,这适用于名称空间,只有它会查找一个目录。因此,引用Demo :: Sub将查找demo/sub目录。这可以让你放弃类的标准定义,所以你可以做的
class Demo::Sub::HelloController < ActionController::Base
end
代替
module Demo
module Sub
class HelloController < ActionController::Base
end
end
end
Rails代码主要是ruby代码。掌握红宝石,你将没有任何问题在阅读栏的代码。 祝你好运。
- 开发一个简单的Rails项目,直到你有基本的Rails的东西了。因为一旦你知道标准的Rails,你将更快地识别插件功能
- 由于Rails已经写入,所以更好地了解ruby。例如,有一本名为Ruby for Rails的书,这是一个很好的起点。
- 我喜欢看看从上到下的测试(积分,控制器,型号)
看着测试是一个好点,投票:) – eric2323223 2008-12-30 06:41:34
- 1. Stemming - 代码示例或开源项目?
- 2. 阅读源代码
- 3. 阅读Xen源代码
- 4. 用PHP阅读源代码
- 5. 如何阅读Github项目?
- 6. IOS:阅读的HTML源代码
- 7. 错误代码c#项目示例
- 8. 示例开源Spring项目
- 9. Ruby on Rails示例项目
- 10. Wicket Contrib示例源代码
- 11. TFTP源代码示例
- 12. Sympl示例 - 源代码?
- 13. C#:阅读代码中的节目在
- 14. 我们如何阅读Webbroswer中的“查看页面源代码”?
- 15. 使用Python和的urllib2如何阅读源代码
- 16. 如何阅读没有限制的源代码?
- 17. 如何阅读完整的HTML源代码与按钮“多”
- 18. FFmpeg:阅读源代码,我如何理解给定配置选项的影响?
- 19. 如何阅读不同项目的web.config?
- 20. 示例代码/代码项目的最佳ASP.NET网站
- 21. “Hasty Pudding”密码的示例源代码?
- 22. 阅读真实生产项目的代码。怎么找?
- 23. 阅读来自android java代码的html列表项目
- 24. 如何/从哪里开始阅读开源代码?
- 25. Kindle如何被用作源代码阅读工具?
- 26. 完全初学者如何阅读源代码?
- 27. 开源C#代理服务器 - 任何项目/示例?
- 28. 如何阅读所有Feed项目?
- 29. 哪里可以找到rails项目的`r.element`的源代码?
- 30. Node-RED开源项目项目的调试源代码
是的,我同意。但是,在这个过程中是否有任何轨道魔法发生应该向像我这样的新手解释?还是有简单的方法来确定一个奇怪的方法来自哪里? – eric2323223 2008-12-29 13:40:56