ROR study

ActiveRecord

  • 如果有状态相关的workflow,建议使用gem state_machine
    • 可参考看资讯交换平台的issue (app\models\issue.rb)
  • paper_trail可以纪录资料库record的变化或是rollback
  • Authentication
    • 目前使用Authlogic,不过现在比较多人推Devise
    • Devise
    • Authlogic
    • 资讯交换平台和RichPOI内部系统用Authlogic和net-ldap,以搭配支援Garmin Passport
      • app\models\user.rb
      • app\models\user_session.rb
  • 有使用者权限控制的需求,可用cancan
  • 档案上传

Controllers

  • 搜寻
    • 简单的搜寻可用gem ransack,可以简化很多controllers对搜寻conditions的处理。设定好model之间的关联,还可做跨model的搜寻
    • Sunspot (还没用过,值得试试看)
      • 简单教学
      • 在rails上使用Solr (from the Apache Lucene  project)做全文搜寻
      • 如果想让你的Solr 支援中文也很简单,你只要将设定中的tokenizer 替换成你想要使用的分词系统就可以了, Solr 本身内建简单的CJK 分词系统
    • 更多的选择
  • 分页(pagination)功能可使用gem kaminari或是will_paginate
  • to_xls

View

Application Server

不要在production上用webrick

其他

ROR小建议

    • 放弃1.​​8,用1.9!
posted @ 2013-04-25 12:19 重庆Debug 阅读(...) 评论(...) 编辑 收藏