从rfacebook 到facebooker

     最近在钻研Facebook + Ruby on Rails的application,坦白说没有当初php那么顺畅。可能因为Rails本身的框架涵盖的东西太多了吧,反而PHP这样最简单直接,反而容易上手。Rfacebook和Facebooker都是Facebook Client Library based on Ruby on Rails,一开始选择前者也没有什么特别的理由,谁让人家就是Using Ruby on Rails with Facebook Platform上的首选呢。
     总体来说Rfacebook就是用Ruby on Rails来解析Facebook请求协议的解析包,如同PHP Client一样,是比较Straight地解决办法。由于有了PHP上的经验,Rfacebook的安装总体来说还是很顺利的,大概前后花了两个晚上Hello World就出来了,直接Scaffold了一个Object 就可以show在facebook上了。当然问题也就接踵而来。
     遇到的最主要问题就是路由。一方面Facebook Application是以apps.facebook.com/xiustodolist作为Context Root来解析的。另外一方面Ruby on Rails有自己的路由解析策略,例如Scaffold出来的new.html.erb中的<%=link_to ‘Back’, users_path %>都是以apps.facebook.com作为根来作路由解析的。所以已开始所有的Link都完全不对,完全没有办法点击。Google了一下,原来是Rails2.0 named routes在作怪。当然也有解决的办法,不过文中更加推荐了Facebooker地解决办法,这也是我第一次听说了Facebooker.
     之后我访问了Rfacebook的主页,看到作者推荐Facebooker的留言,还说如果Facebooker1.0 release,他就要停掉Rfacebook,嗯,还有什么理由不试试看Facebooker呢,嗯,gogogo.
     Facebooker的安装之路远没有Rfacebook来的顺利。主要遇到了两个问题。
1 Facebooker 已经从SVN搬迁到了Git上。最可恨的是SVN上最后的版本还有编译错误。网上比较著名几篇Tutorial都继承了这个错误,让初学者完全摸不到头脑。解决办法,去Git自己下载最新的版本手动安装。
2 Facebooker会按照Rails 2.0的named routes去解析request,所以面对Facebook的请求,他会最后Forward给index.fbml.erb而不是index.html.erb,不仔细看教程就会错过了,例如我。。
3 默认的respond_to没有fbml的Accept_type,所以如果你希望继续使用respond_to这么有趣的东西的话,就需要在/config/initializers/mime_types.rb中添加text/html = fbml 的mapping.
     昨天刚刚完成了Facebooker的安装,总体来说非常的Rails 2.0 oriented.路由问题也都没有出现,可以放心的使用。
 
参考:Rfacebook

 

最近看到的Ruby on Rails 应用

github
http://github.com/
基于RoR的Git hosting.
由于Rails将项目迁移过去而名声鹊起.
介绍参考
GitHub – 基于Rails的Git库托管

lighthouse
http://lighthouseapp.com/
基于RoR的需求问题跟踪系统.
同样由于Rails将Bug,Feature跟踪迁移过去而名声鹊起.
没有中文参考….

heroku
http://heroku.com/
基于RoR的虚拟主机服务提供商.
基于Amazon的EC2服务.
最近获得风投300万美金而成为了RoR项目成功的又一代表.
Heroku: Ruby on Rails服务商得到300万美金投资

 

无觅相关文章插件,快速提升流量