2008 年 10 月 29 日,星期三

在 Rails 的 3 周(2008 年 10 月 29 日)

Gregg Pollack 发布

过去有 3 周(我知道我偷懒了)。然而,现在是时候写一份关于任何 Rails 开发人员可能想知道的信息摘要了。可以在 Rails Envy Podcast #51#52#53 上收听这些笔记的详尽音频版本。

您可能已经知道上个星期五发布了 Rails 2.2 RC1。在 版本说明 中阅读新功能详情。然而,如果您正在寻找更全面的内容,可以查看 Envycast 关于 Ruby on Rails 2.2^ 或 Carlos Brando 编写的 PDF

在过去几周内,还推出了 Rails 2.0.5Rails 2.1.2,主要是解决一些小的安全问题。如果您使用的是 2.x,您应该花时间来升级。

如果您正在利用 Rails 2.2 的本地化功能,那么您可能应该了解两个库。首先,Diego Carrion 最近创建了一个 restful_authentication 的 fork 版本,其中他添加了对 i18n 的完全支持。其次,Karel Minarik 最近发布了一个用于执行 localized_country_select 的插件,以便您可以使用适当的语言显示国家/地区。

如果您需要 Rails 应用程序接收电子邮件,一种方法是使用 Gmail IMAP。John Nunemaker 写了一个 详尽的教程,展示了从 Gmail 中分析电子邮件所需的所有脚本。

托管、性能和调优

对于 Rails 2.2 线程安全,您可能会认为这对每个人来说都会带来性能提升。然而,事实并非总是如此,Pratik Naik 解释了原因。

Ilya Grigorik 撰写了一篇博文,内容是关于如何使用 MYSQL Plus 扩展 Rails 与 ActiveRecord 的,他使用了 Neverblock 的非阻塞 MySQL 驱动程序,从而极大地提高了 ActiveRecord 的性能。

如果您需要在 Rails 应用程序中实现全文搜索,并且已经在考虑 Sphinx,您可能需要查看 Pat Allan 在 Peepcode 上的 Thinking Sphinx PDF

库新闻

如果您是 resource_controller(精简REST控制器)和 Shoulda,那么你一定应该查看James Golick开发的启动应用程序,这个应用程序名为空白

下次需要构建“软件即服务”网站(如BaseCamp)时,请查看Service Merchant。该gem位于Active Merchant之上,并且为您提供订阅计费所需的一切。

是否忘记过您的Rails路由?这里始终提供“rake routes”命令,但是它不是很用户友好。您可能希望查看Vasco。Vasco是用于Rails的Route explorer,它提供了一个友好的Web界面,用于浏览和测试所有Rails路由。

如果您需要构建一个多域或多路径(如foo.com或bar.com或a.com/foo)可访问的Rails应用程序,请查看Sean Huber开发的Rails Proxy Plugin。此插件允许您通过检测传入路径以及正确地设置会话域、默认主机和相对url根,对代理请求动态响应。

如果您需要一组简单的方式来测试您的扩展ActiveRecord的插件,请查看acts_as_fu,除了名称不够理想之外,它真得非常不错。

如果您来自PHP,那么您可能熟悉 phpMyAdmin。Rails Rumble团队做出一个phpMyAdmin的Ruby版本,如果您缺少用于数据库的快速Web界面,那么查看该版本肯定值得。

活动新闻

Rails Rumble已经结束,您只有3天时间投票(投票在11月1日午夜截止)。立刻投票!为下星期二进行良好的练习(至少在美国)。

如果您在伦敦,那么Ruby Manor将于11月22号举行。看起来它会是一个有趣的非会议类型的活动。

最后,Rubyconf将于下周在佛罗里达州奥兰多举行,那里最近有点冷。无论如何,打包一些保暖物品,下周见!

图像来源:Rails上的蓝天,作者ecstaticist模拟解决方案606模组,作者Formication2006年欧洲RailsConf,作者Paul Watson彩虹,作者One Good Bumblebee
^为了充分披露,实际上我们制作了Envycast,并且从屏幕录像的销售中获利。