1》 crack 转换json和xml格式的数据为Hash
eg: Crack::JSON.parse({:a => "a"}.to_json)
eg: Crack::XML.parse(hash.to_xml)
2》 httparty 为Ruby Class提供快速Web服务,封装了大量的访问Web的类,是一个简单的HTTP / REST客户端库。
3》 jrails jRails是一个替代Rails 中的Prototype/script.aculo.us 为jQuery的项目。使用jRails,你能获得所有缺省的Rails helpers 来使用jQuery库。
4》 json 处理json数据的一个库
JSON.generate(hash) 把hash转换为json数据
JSON.pretty_generate(hash) 把hash转换为json数据(格式化)
JSON.parse(json数据) 把json数据转换为hash
5》 mechanize 用于模拟登录,这是一个用于Web自动交互的lib。可以自动存储cookie,重定向,提交表单等等。(不能解析javascript的自动跳转)
6》 memcache-client 作为操作memcached缓存的客户端,建议安装system_timer。
7》 memcached Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。Memcached能够用来存储各 种格式的数据,包括图像、视频、文件以及数据库检索的结果等。许多Web应用都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随 着数据量的增大、访问的集中,就会出现RDBMS的负担加重、数据库响应恶化、网站显示延迟等重大影响。这时就该memcached大显身手了。 memcached 是高性能的分布式内存缓存服务器。一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。
redis: 同上
8》 mongrel、thin、passenger、unicorn、rainbows Ruby语言环境下快速、通用的应用服务器,其中rainbows是基于unicorn开发的,它是多线程,而unicorn是多进程。
9》 cache-money rails缓存插件
10》 nokogiri Nokogiri 用于网页抓取,它可以解析HTML和XML文档并从中提取内容。
11》 rack 提供一个最小的API连接到web servers和web框架,也就是一个很小的web服务器,一般用于某项服务器操作过于频繁的时候,例如导出邮件联系人,此时将该操作写一个rack程序,让该操作单独访问该服务器。
12》 rcov 查看单元测试的覆盖率
13》 responds_to_parent 实现ajax方式上传文件(图片)
14》 rmagick 确保安装了ImageMagick,rmagick是 ImageMagick的中间件,用于对图片进行切割等操作
mini-magick 稳定,占用内存小,但是功能比rmagick少
15》 ruby-debug 调试ruby程序的插件,在 需要的代码部分增加debugger
pry 调试插件
16》 sqlite3-ruby sqlite3数据库的驱动
17》 thoughtbot-paperclip 文件上传,依赖于ImageMagick 。
18》 thoughtbot-shoulda shoulda测试,和rspec测试结合起来很好用,尤其是测试模型之间的关联关系和验证。
19》 chinese_pinyin 转化汉字为拼音 eg: Pinyin.t("中国") => "zhongguo"
chinese_regions 国家、省、市的数据
symbolize 枚举插件,地址: https://github.com/nofxx/symbolize
Ransack 搜索插件
squeel 搜索插件
searchlogic: 只支持rails2
rd_searchlogic: 等同于searchlogic,但是可以支持rails3(gem 'rd_searchlogic', :require => 'searchlogic')
default_value_for: 设置属性默认值
Kaminari : 分页插件
will_paginate : 分页插件
ancestry : 树形结果的方式存储,可以看作是一对多、多对多的扩展
acts_as_list : 在一对多关系中,将多端按照作为一个有顺序的列表来存储,并提供一些移动等方法来辅助
acts_as_commentable: 评论插件,无回复评论功能
acts_as_commentable_with_threading : 评论插件,有回复评论功能
seed-fu: 填充数据
acts-as-taggable-on: 管理标签的插件
rcov: 检测代码测试覆盖率
immortal: rails3的软删除插件(没有删除时间,如果需要,这个得自己写)
permanent_records: rails3的软删除插件,很好用,需要注意的是Model.all返回的是已删除和未删除所有的数据。
simple_form、 formtastic: 表单插件
active_hash: 用于保存配置型(枚举)记录,把存入数据库的数据,可以直接写到项目文件中
settingslogic: 方便的读取yaml里的信息
jQuery-Validation-Engine: js表单验证, https://github.com/posabsolute/jQuery-Validation-Engine
cancan: 权限控制(英文资料: https://github.com/ryanb/cancan, 中文资料: http://www.cnblogs.com/bendanchenzhicheng/archive/2011/09/05 /2167451.html)
resque: resque是基于redis的后台任务组件,能把任何类或模块作为任务在后台执行,且自带前台管理功能,方便查看执行情况。
sidekiq: 后台异步执行任务,这个和resque的区别是多线程的
resque-scheduler: 定时执行任务
whenever: 定时执行任务(其实就是linux的crontab)
rufus-scheduler: 定时执行任务,和whenever不同的是,可以在后台控制更方便
delayed_job: 将要执行的任务存储到后台数据库中,后台自动执行,通常我们用 collectiveidea / delayed_job_active_record
ruby_regex: 提供常用的正则
active_hash: 存储数据到文件中,效果和在数据库中一样,这样更加便于管理,而且有的时候数据很少的话,这样反而更加方便
state_machine:
rack-rewrite: 使用rack rewrite路由
timecop: 模拟时间
watir-webdriver: 它能够使用chrome、firefox、IE浏览器进行web测试,它可以模拟用户点击链接,填写表单。
gemcutter: 将用户开发的gem包自动打包上传到rubygems.org
devise-async: 异步发送devise邮件
themes_for_rails: 主题模板
spreadsheet: 操作电子表格
better_errors: 可以提供更好的报异常页面
chinese_pinyin: 汉语拼音,版本要至少4.2,前面的有bug
elastic_search: 配置好的elastic_search, https://github.com/medcl/elasticsearch-rtf
font-awesome-sass-rails: 各种各样的图标,网址: http://fortawesome.github.com/Font-Awesome/
animate-rails: 包含一些实现了各种动画效果的 CSS
traceroute: 测试无效的路由和action
client_side_validations: 服务器端写了验证后,可以自动让客户端生效
stringex: 字符串扩展,git@github.com:rsl/stringex.git
quiet_assets: 禁止rails中的assets日志请求。
sshkit: SSHKit在一个或多个服务器上运行命令的工具包,和capistrano可以搭配使用发布服务器
bluepill: 监控服务器进程用的,她会轮询执行命令去检查
bcrypt-ruby: 加密相关http://www.infoq.com/cn/news/2009/08/jruby187-bcrypt
anjlab-bootstrap-rails: bootstrap前端框架
cells: 缓存
dynamic_sitemaps: 站点地图
tesseract-ocr: 解析图片的数据
tesseract: 解析图片, http://hilojack.sinaapp.com/?p=866
china_sms: 短信平台接口, https://github.com/saberma/china_sms
carrierwave-aliyun: carrierwave上传到阿里云oss
china_city: 省市区级联
wechat-rails: 帮助开发者方便地在Rails环境中集成微信公众平台提供的所有服务
Watir+Selenium: 测试
phonegap: 移动跨平台移动应用程序的快速开发平台
JQuery Mobile: 移动 web 应用程序的框架
rqrcode-rails3: 生成二维码插件
alipay: 支付宝插件,chloerei/alipay。
grape: api框架,如果你开发api,可以使用这个
rolify: 角色管理,和cancan可以结合使用,用于权限管理
oneapm_rpm: 项目监控,国内的,很棒
newrelic: 和oneapm一样,不过是国外的,打开很慢。