Ruby on Rails 2.0的新特性介绍 - 编程入门网
Ruby on Rails 2.0的新特性介绍时间:2011-11-09 javaeye robbin万众瞩目的Ruby on Rails 2.0已经发布了,Rails框架在2004年诞生以来,一直保持着相当快的版本 升级速度:2005年发布了Rails1.0版本,2006年初发布Rails1.1版本,2007年初发布Rails1.2版本,而还 没有等到2008年,在2007年圣诞前夕的12月6日,Rails2.0已经发布。 Rails框架每个大的版本升级都给我们带来了相当多的新功能,新惊喜。Rails1.0带给我们完善的单元 测试和集成测试;Rails1.1带给我们DataBase Migration和RJS;Rails1.2让我们看到了REST的光明前景 ,那么Rails2.0又将带给我们什么呢? 我粗略的翻译了一下Rails框架作者DHH写的Rails2.0框架介绍文 章,以下翻译自DHH的文章,原文在: http://weblog.rubyonrails.org/2007/12/7/rails-2-0-it-s-done 在经过差不多一年的开发之后,Rails2.0终于发布了。这是一个棒极了的Rails版本,包括了大量堪称 伟大的新特性,无数的bugfix和大量功能的打磨。我们花了无数的精力去打造这样一个非常完美合理的软 件包。 这也是Rails框架发展历史上的一个里程碑。我个人在Rails框架上面的开发工作已经有四年半的时间 了,并且我们现在的贡献者也越来越多。我对这几年我们所做出的工作和我们一直坚持的信念感到非常的 满意。我们一直在坚持这一点并且不断推动它。 在详细的介绍Rails2.0之前,我要向那些为Rails框架做出过贡献的每一个人致以深深的谢意,不论是 像一个家庭那样其乐融融的Rails核心开发团队,还是成千上万的、而且年复一年为Rails提交补丁,积极 参与Rails社区人们。Rails2.0也是大规模开源软件开发社区的一个重大胜利,而你完全可以自豪于你在 Rails社区当中扮演的角色和做出的贡献。干杯! 现在让我们简单的窥一斑见全豹的看看Rails的那些闪闪发光的特性: Action Pack: Resources Controller里面充斥着大量action方法的时代已经过去了,我们对REST架构的应用进行了大量的改进 和提高。首先,我们不再使用分号来隔离自定义的方法,而是采用斜线,例如原来是 /people/1;edit的 URL,现在改成了 /people/1/edit.另外我们还对URL路由资源添加了命名空间的支持,因此像后台管理的 接口你可以像这样非常简单的定义: map.namespace(:admin) do |admin| admin.resources :products, :collection => { :inventory => :get }, :member => { :duplicate => :post }, :has_many => [ :tags, :images, :variants ] end 这种方式可以让你按照如下的方式定义命名路由,例如:inventory_admin_products_url和 admin_product_tags_url等等。为了方便的记录所有的路由规则,我们添加了一个rake任务叫做“rake routes”,它能够列举出来routes.rb定义的所有命名路由规则。 此外我们还引入了一个新的约定,即所有基于资源的controller默认都是复数形式的。这样即便单个 资源在不同的路由规则中被多次引用,仍然可以指向同一个controller来处理,例如: # /avatars/45 => AvatarsController#show map.resources :avatars # /people/5/avatar => AvatarsController#show map.resources :people, :has_one => :avatar Action Pack: Multiview Ruby on Rails 2.0的新特性介绍(2)时间:2011-11-09 javaeye robbin与资源映射一起进行功能增强的还有MultiView。我们已经有了respond_to方法,但我们可以更进一步 ,把MultiView控制延伸到模板里面去。我们现在可以根据模板文件的后缀格式来决定使用什么render机 制。因此,show.rhtml你可以写成show.rhtml.erb,这就表明是一个默认的rhtml模板,和你过去在 Action里面使 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |