Rails 哪个项目是你认为的最适合新手源码学习的 Rails 开源应用?

lgn21st · 2012年02月21日 · 最后由 zhangliang 回复于 2018年10月24日 · 25826 次阅读

今天在RubyTuesday有个朋友问我,希望推荐一个Rails的开源应用,用来源码学习。 这个问题大家在RubyTuesday上讨论了一下,没有结论,所以发到这里,需求如下:

  • 代码干净,工整,适合源码阅读
  • 主要focus在学习Rails应用开发,而不是Rails插件或者元编程
  • 难易程度定位在已经阅读过《敏捷web开发实践》,想要积累实战经验的初学者
  • 附带完整的测试用例,能够同时学习如何编写 unit test或者rspec
  • 可以通过学习掌握主流的Ruby/Rails开发技术

大家心目中有类似这样的项目么,注意不是推荐阅读Rails源码本身或者Sinatra这样的库或者框架级别的项目,而是真实的商业/企业/社交应用的项目。这个问题背后的需求是,帮助那些没有实战经验,想要自己主动积累相关经验,然后去争取Rails职位的朋友。

共收到 70 条回复

rabel那套可以读。只是haml我看着蛋好痛。

现在回想起来觉得自己直接写帮助比较大。 推荐的话我会推荐当时对我帮助比较大的 angel_nest ,但是用的是slim来输出html。 https://github.com/fredwu/angel_nest 然后就在看 ruby-china了。

关注!

为什么 url中的下划线会被吃掉? angel_nest 中间有下划线 是因为safe_html的作用么

如果你真想用Rails做应用的话,你不妨自己做一个简单的记账本试试,或者是说结合自身的需求,或者是身边的人的需求,做一个简单的东东,并逐步优化完善。

源码我推荐读读@saberma的shopqi https://github.com/saberma/shopqi 代码很整洁,而且一直在更新

7楼 @camel 这个图太逼真了,我在显示器上按了半天。 Alt text here

@lgn21st 建议关于这个问题,事后可以建立一个wiki

强烈支持

关注一下,因为“Agile Web Development with Rails, 4th Edition”我马上要看完啦。 正希望能快点成长

mark...关注

radiant

https://github.com/radar/forem.heroku.com https://github.com/radar/forem 这是一个论坛app的开源代码。前一个是rails demo,后一个是engine,被前一个调用. 我看了下源码里的model数量不是很多,学习负担不是很大,而且论坛这种形式的应用需求大家都很了解的,无需别人解释。 可以先学习demo,然后自己建一个app,尝试下其engine,最后再学习engine。 而测试的代码,在engine里都有的。

#9楼 @ery 同意,这应该是一个长期的话题,而且最好能有更多的源码学习和经验分享,可以帮助后面学习源码的同学。

http://codecampo.com/

https://github.com/chloerei/code_campo

刚刚做过裁剪,只剩下 Topic 和相关功能,非常简单,现在更多经验放在前端体验上。用了 haml 和 mongoid 可能给入门者一点干扰。代码测试比 1:0.8,gem 也刚刚升到最新。

看到最后一段囧了,这是非商业的,而且流量很小。

#16楼 @Rei 节点也去掉了?那现在的话弄个tags页面会更好吧?

#17楼 @vkill codecampo 一直用 tags 没有用节点(分类),跟 ruby-china 是不同的代码。tags 的问题是话题聚合的问题,之前的发贴都靠自觉,在考虑怎么解决,比如 tag 补全提示是要加的。tags 页面可能会弄,还没想好表现形式。

#8楼 @ery 刚仔细的看到这图片 原以为是虫子呢

当年看的是beast.... 不过着实太久不更新了...

那个再适合新人学习rails不过了...

redmine 或者 rails 的源码, rails的源码是非常好的东西,不过就是太复杂了

咳咳,虽然已经在前几楼推荐过了,但是作为原作者,我还是再来推荐一下我的 https://github.com/fredwu/angel_nest :)

我看的第一个项目就是homeland,ruby-china的前身!!

#25楼 @fredwu 我已经在线下强力推荐过你得项目了,呵呵,特别是rspec test部分,干净清晰,虽然我是喜欢用factory_girl得,呵呵。

#23楼 @saberma 谢谢,已经将你得ShopQi加入我得源码阅读list,呵呵。

Typo挺不错的,一个博客系统,像常见的登陆,权限管理,模板之类的功能都有,这些功能大部分网站都需要

没有人关注这个? https://github.com/diaspora/diaspora 开源的分布式SNS

#30楼 @FoGhost 不错,少见的cucumber项目。

这是多好的一个帖子啊,多谢各位

关注中

-_-# 为什么没人提ruby-china???有些难? shopqi用的gem更多啊

好贴。。。mark

我是Rabel的作者,Rabel是一套简洁的商业论坛程序,使用Rails 3.2.1开发,拥有丰富的rspec和cucumber测试用例。既然这里要求是商业/企业项目,我就大言不惭的推荐一下Rabel。

同时,我正在做基于Rabel源代码的免费培训活动。

感兴趣的同学,可以搜索rabelapp这个关键字,或者查看我的个人主页。

#34楼 @jinleileiking 说的对,直接contribute to ruby-china,自己就可以看到自己的修改被无数人用,感觉给力啊,呼吁大家一起contribute一下吧。

#36楼 @daqing 不开源的么?

#38楼 @ywencn Ruby China是开源的。另外,刚刚发现,标题中说的是Rails开源应用,内容中又要找商业项目,有点疑惑。

#39楼 @daqing 找商业应用,或者企业应用的目的,是为了契合能够通过源码学习,能够去应聘普通工作的同学,不过我想Rails的工作也不仅仅是商业或者企业应用,还有很多的SNS应用,所以大可不必仅限于此。

#23楼 @saberma 貌似 缺少 shopqi 的安装指南。

@oppih28 不好意思,之前是用了vagrant box,后来删掉了,有时间再重新搞安装说明

@saberma shopqi默认采用pg数据库,是做何考虑呢?mysql性能跟不上?

#43楼 @alucardpj 默认适用pg数据库有另外一个好处,就是可以直接无障碍的部署到Heroku上,不知道 shopQi 是不是这个原因? cc @saberma

@alucardpj @lgn21st 最初是看上了pg的DDL rollback特性。mysql有时候执行migrate,出错了,创建的表那些都还会保留。

#45楼 @saberma shoqi用的是啥环境,ruby-1.9.3 用bundle install报错了....好像就是pg报错了...到现在还没部署上

@cbkid 用的是ruby-1.9.3-p0,你安装了pg没有?报错的内容是?

#47楼 @saberma 不好意思插入一张图片...因为没用putty链接不能复制出内容。 有点不明白是pg需要在系统就安装上,还是就是通过GEM编译的,而且编译错误了

#47楼 @saberma #48楼 @cbkid 关于在windows上部署 ShopQi,你们可以开专题帖子讨论嘛,这里希望继续收集靠谱的Apps,推荐给大家。

不好意思 ,还不会发私信

顶起来

这个需要顶。

呵呵。。。再加一个rubyer

好帖子。。

mark ~

按楼主的描述,需要的是一个现成的,基于现实需求的应用,这似乎一时很难找到。而且,我认为也很难有一个真实的项目适合于教学,生产环境与教学环境下的代码还是区别很大的。 我觉得理想的是维护一个或一系列专门面向教学环境的示例应用,比如 对《敏捷web开发实践》中的depot的扩展和完善,,又或者将ruby-china.org的源码fork出一个教学版本等等

有这样的项目吗?

对啊,我刚搭建好环境,忽然有种无从下手的感觉,不知道从何学起。。。哎

顶啊,ruby 中国上应该多弄点这种项目,让大家学习啊。。

@lgn21st 咱青岛的Qingdaorails社区啥时候搞搞啊?人不多的化先从给大家培训下开始哇,哈哈哈~~

我在想 ruby-china.org 的源代码是不是 rails 的...........

关注中,看完 tutorials 就可以拿个项目过过修修改改了。 :)

hi wiki里面安装rails环境的帖子里面,mac ox安装homebrew的地址老了.

Whoops, the Homebrew installer has moved! Please instead run:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Also, please ask wherever you got this link from to update it to the above.
Thanks!

#8楼 @ery SB的去吹了两下才发现是图

您好,我想发置顶贴,请问可以吗?或者有什么可以广告合作形式,15901161315这是我的联系方式

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册