十二 18

MephistoBlog使用的插件和第三方代码介绍


本篇是在 开发笔记:rails分页和acts_as_taggable插件的应用 一文的后半部分基础上再整理的。内容上是连贯的。

在 Rails开发中,会用到很多有帮助的插件,A taxonomy of Rails plugins中文翻译】 里讲到了如何制作插件,并引用了acts_as_taggable的例子进行讲解。

Top 11 Rails Plugins 里面更是讲了很多有帮助的插件。不过我更想细看一下mephisto-0.7.3里面的插件。

MephistoBlog用了哪些插件

看图:
vender

plugins

说话:
vender中:
BlueCloth:BlueCloth是一个Markdown的Ruby实现,一个提供给网页文字撰写者将文本转成HTML的工具。Markdown令你可以写出容易阅读、容易撰写的文本格式,然后将它转换成结构化的XHTML(或者HTML)。

RedCloth:RedCloth是一个令你可以在Ruby中使用Textile的模块。Textile是一个文本格式,一个非常简单的文本格式。可以将一个可读的文本转成HTML。

RubyPants:是Ruby实现的“smart-quotes library SmartyPants”。RubyPants使用不同的APIs,它兼容上面两个的APIs,将ASCII的标点转换成 “smart” typographic punctuation HTML entities。参考:RubyPants

RubyZip:rubyzip是一个ruby读写zip文件的类库。RDOC

TZInfo:TZInfo是一个标准tz数据库提供不同时区的daylight savings的Ruby类库。

plugins中:

a_gems:小巧的Ruby Gem管理工具,它在启动时会自动的将gem/lib的路径加载到$LOAD_PATH 中。
它不用介绍,就几行代码。

 
standard_dirs = ['rails', 'plugins']
gems          = Dir[File.join(RAILS_ROOT, "vendor/**")]
if gems.any?
  gems.each do |dir|
    next if standard_dirs.include?(File.basename(dir))
    lib = File.join(dir, 'lib')
    $LOAD_PATH.unshift(lib) if File.directory?(lib)
  end
end

acts_as_attachment:保存附件文件到数据库或文件系统的插件。

acts_as_paranoid:重写当前model的一些基础方法。当执行destroy时,设置deleted_at为当前时间。里克:意思是说它并不真正删除数据,只是加上了一个删除日期,证明该记录被删除了。它可以使你重新看到已删除的记录。对数据要求高的应用很有帮助。

acts_as_versioned:对一个ActiveRecord module 进行简单的版本标注。可实现值的回滚操作。因为它为每一个create出来的记录都做了版本记录。

dialog_helper:一个简单的脚本,对浏览器的弹出窗口进行“装修”。

filtered_column:README里啥也没写!!看文件里面,是在做格式化文本,可能是在对BlueCloth和RedCloth的一个功能进行改进。代码很多,有用过的朋友请留言。

filtered_column_code_macro:增强ruby代码的高亮显示,使用了CodeRay库,Ruby写的做语法高亮显示的库。

filtered_column_flickr_macro:flickr转换,文本编辑的加强功能。(Author::Scott Raymond)

labeled_form_helper:为表单元素增加label标签。readme里有示例。

Liquid:一个模板引擎。特点:可以编辑应用的外观,而且不会被执行危险代码。直接从数据库渲染模板。里克:看上去有点像django的模板语言。

mephisto_converters:博客搬家程序,将TextpatternTypoWordPress转换成mephistoblog。

mocha:Rails的一个测试套件,可以模拟和替换代码中的方法和实例,比如,你可以替换掉ActiveRecord重的实例方法,而避免在单元测试的环节操作数据库。毕竟操作数据库还是慢一些的。

simply_bdd:可以在创建测试用例的时候使用上下文和代码块。

simply_helpful:新增的一些helper。加强功能。 Simply Helpful Rails Plugin里介绍的比较详细,不过一些功能已经放到2.0里面了,对于老版本,尤其是博客里提到的1.2.2的应用,可以考虑安装的。

white_list:一个html安全增强工具,可以过滤掉一些hack代码,是html更安全。

er...
到这里,mephisto blog的第三方代码和插件都写完了。

广告一下:狂喜欢的 Football Manager 2008 已经发了。狂好玩。我的曼城还在煎熬中,不过上个赛季最后一场比赛,客场对阿森纳,竟然无比顽强的2:1获胜。挤掉了曼联排名第四。哇哈哈哈!

man city

参考资料:
MephistoBlog
Ruby Lib中文站
ASCII
用mocha测试rails,mock HTTPResponse

  • 标签 :  , ,
  • 原文链接 : http://railser.cn/blog/mephistoblog-vender-and-plugins
  • 转载原创文章请注明 : 里克的自习室
  • 收藏到 : Google书签 新浪ViVi 365Key网摘 天极网摘 我摘 POCO网摘 博采网摘 YouNote网摘 和讯网摘 博拉网 igooi网摘 I2Key网摘 天下图摘 百特门网摘 Del.icio.us Yahoo书签 奇贴 QQ娱乐摘 添加到Digg! 添加到Facebook!
  • 发表留言