BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Rails2.0——新手指南

| 作者 Rick DeNatale 关注 0 他的粉丝 ,译者 马家宽 关注 0 他的粉丝 发布于 2007年12月30日. 估计阅读时间: 4 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

随着前些时候Rails2.0.0和2.0.1版本的发布,以及这两天Rails2.0.2的迅速后继,为Rails提供支持的讨论组充满了Rails新手关于使用一些知名教程,例如Dave Thomas和David Heinemeier Hansson撰写的《Agile Web Development with Rails》时所出现的问题。Thomas/Hansson的书,通常被简称为AWDR,已经在一年前推出了第二版,但仅仅包含了Rails 1.2的内容。

虽然比起Rails 1.2和Rails 1.1,Rails2.0和其前辈Rails1.2之间的变化并不像前二者那么显著,但对于那些毫无防备的初学者,Rails进阶之路仍然陷阱重重。

Rails2.0的目标之一是让Rails框架变得更加简洁。这意味着原来的一些标准特性被从框架内核中移到了插件中。对于那些使用1.2版本教程的用户来说,这可能是一个障碍。下面是两个例子:

  1. 由于MySql一直是Rails的默认之选,许多教程都使用MySql作为数据库。不过现在,Rails2.0.3将缺省的数据库配置改为了Sqlite3。AWDR在书的后面部分介绍了如何使用Sqlite3,但一个从头开始看书的新手可能还没有在遇到数据库方面问题时获得足够多的相关知识。
  2. AWDR的开始部分使用了Rails的动态脚手架,而这一特性现在只有在安装了scaffolding插件后才能使用:
              script/plugin install scaffolding 
    Rails2.0中像这样“丢失”的特性还包括AJAX的本地编辑(in-place-editing)和自动完成(auto-completion),以及一些著名的acts_as_x模型扩展。一些按照过时教程学习Rails的人可以尝试运行下面这句命令:
              script/plugin list 
    来查看是否某些可用的插件提供了那些被从Rails2.0内核中移出的特性。
另一个方法是使用Rails1.2.6来学习教程,然后迁移到2.0版本。首先安装Rails1.2.6:
    gem install rails --version 1.2.6 
然后您可以删除所有已安装的rails 2.0.x gems,或者在生成项目时指明要使用的Rails版本:
    rails _1.2.6_ my_rails_project 

大多数gems所安装的指令其实是对gem中代码调用的包装,所以您可以在版本号的开始和结束处加下划线,将其作为第一个参数,以此来指定所使用gem的版本。

市面上已经有一些介绍Rails2.0的书籍,例如Obie Fernandez所编写的The Rails Way。不过迄今为止他们似乎都致力于面向那些已经拥有一定Rails经验的读者。毫无疑问,在不久的将来,一些“经典”的Rails书籍会更新到Rails2.0,而在新面世的Rails教程中也会用涌现出经典之作。

由此来看,Rails初学者可以选择尝试解决同时使用旧版本教程和新版本框架所产生的问题,也可以继续使用与教程配套的旧版本Rails,直到相关知识技能达到一定程度后再更新Rails的版本。对于广大初学者来说,也许后者是一个更为明智的决定。

查看英文原文:Rails 2.0 - What's a Newbie to Do?
译者简介:马家宽,北京大学软件工程实验室博士研究生,研究方向为过程管理(Process Management)。专业方面的目标是领悟一点软件开发中理论、技术、实践和人这些关键要素的结合之道。参与InfoQ中文站内容建设,请邮件至china-editorial[at]infoq.com

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

rails way or ruby way by ann eric

这个好像是两本书吧。。。

rails2.0 by nangua xiao

觉得应该讲解以下rails2.0 功能测试方面的东西,最好举例说明以下更好!

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

2 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT