今天在 RubyTuesday 有个朋友问我,希望推荐一个 Rails 的开源应用,用来源码学习。 这个问题大家在 RubyTuesday 上讨论了一下,没有结论,所以发到这里,需求如下:
大家心目中有类似这样的项目么,注意不是推荐阅读 Rails 源码本身或者 Sinatra 这样的库或者框架级别的项目,而是真实的商业/企业/社交应用的项目。这个问题背后的需求是,帮助那些没有实战经验,想要自己主动积累相关经验,然后去争取 Rails 职位的朋友。
现在回想起来觉得自己直接写帮助比较大。 推荐的话我会推荐当时对我帮助比较大的 angel_nest ,但是用的是 slim 来输出 html。 https://github.com/fredwu/angel_nest 然后就在看 ruby-china 了。
如果你真想用 Rails 做应用的话,你不妨自己做一个简单的记账本试试,或者是说结合自身的需求,或者是身边的人的需求,做一个简单的东东,并逐步优化完善。
https://github.com/radar/forem.heroku.com https://github.com/radar/forem 这是一个论坛 app 的开源代码。前一个是 rails demo,后一个是 engine,被前一个调用. 我看了下源码里的 model 数量不是很多,学习负担不是很大,而且论坛这种形式的应用需求大家都很了解的,无需别人解释。 可以先学习 demo,然后自己建一个 app,尝试下其 engine,最后再学习 engine。 而测试的代码,在 engine 里都有的。
https://github.com/chloerei/code_campo
刚刚做过裁剪,只剩下 Topic 和相关功能,非常简单,现在更多经验放在前端体验上。用了 haml 和 mongoid 可能给入门者一点干扰。代码测试比 1:0.8,gem 也刚刚升到最新。
看到最后一段囧了,这是非商业的,而且流量很小。
@camel @lgn21st 开源的东西很多,但是要说商业应用的还是少了,这样做的风险很多朋友也提到了,竞争的、漏洞方面的,等等,我也有过担忧,只是心中还是向往开源。回忆起最初学 rails 的时候就希望中国能有个实际开源的 rails 项目,可以知道别人是怎么做的,有个参考会节省很多时间,所以我就从一开始就把 ShopQi 开源了。
@lgn21st 提到的刚好和我最初的想法很像:
ShopQi 会尽量保持代码简洁,易读,必要时会有中文注释;有时候看到不错的 ruby 技术文章,在 ShopQi 用了,会在旁边加上短链接引用,方便延伸阅读。要完全达到代码简洁这个目标,需要长期进行重构,而重构的基础是完整的自动化测试
满足
满足
大多数功能都有 rspec 单元测试和 capybara 做集成测试,以保证开发过程中不会破坏以前的功能
登录认证、oauth2 认证、上传、中文全文检索、缓存、后台任务、wiki 系统、支付网关、backbone 单页无刷新应用、部署,ShopQi 包含了 rails 项目开发过程中的大部分技术应用
以上几点,ShopQi 基本都能满足,只是不知道功能太多,有点担心初学者会无从下手。 https://github.com/saberma/shopqi
@ery 嘿嘿,上面的虫子好玩吧
我是 Rabel 的作者,Rabel 是一套简洁的商业论坛程序,使用 Rails 3.2.1 开发,拥有丰富的 rspec 和 cucumber 测试用例。既然这里要求是商业/企业项目,我就大言不惭的推荐一下 Rabel。
同时,我正在做基于 Rabel 源代码的免费培训活动。
感兴趣的同学,可以搜索rabelapp
这个关键字,或者查看我的个人主页。
#34 楼 @jinleileiking 说的对,直接 contribute to ruby-china,自己就可以看到自己的修改被无数人用,感觉给力啊,呼吁大家一起 contribute 一下吧。
#43 楼 @alucardpj 默认适用 pg 数据库有另外一个好处,就是可以直接无障碍的部署到 Heroku 上,不知道 shopQi 是不是这个原因?cc @saberma
@alucardpj @lgn21st 最初是看上了 pg 的 DDL rollback 特性。mysql 有时候执行 migrate,出错了,创建的表那些都还会保留。
按楼主的描述,需要的是一个现成的,基于现实需求的应用,这似乎一时很难找到。而且,我认为也很难有一个真实的项目适合于教学,生产环境与教学环境下的代码还是区别很大的。 我觉得理想的是维护一个或一系列专门面向教学环境的示例应用,比如 对《敏捷 web 开发实践》中的 depot 的扩展和完善,,又或者将 ruby-china.org 的源码 fork 出一个教学版本等等
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!