Ruby on Rails 2.0的新特性介绍

http://tech.ddvip.com   2008年01月18日    社区交流

内容摘要:在详细的介绍Rails2.0之前,我要向那些为Rails框架做出过贡献的每一个人致以深深的谢意,不论是像一个家庭那样其乐融融的Rails核心开发团队,还是成千上万的、而且年复一年为Rails提交补丁,积极参与Rails社区人们。Rails2.0也是大规模开源软件开发社区的一个重大胜利,而你完全可以自豪于你在Rails社区当中扮演的角色和做出的贡献。干杯!

  所以,新的模板格式是: action.format.renderer。例如:

  * show.erb: 不管什么格式的显示方式都使用默认的erb显示show模板

  * index.atom.builder: 用Builder库来render XML文件,输出的文件类型为RSS的AOTM类型

  * edit.iphone.haml: 使用用户自己定义的HAML render机制来输出模板内容到iPhone手机上面

  说到iPhone手机,我们可以自己造一个专用的类型来实现内部路由。当你需要类似iPhone这样的特殊的HTML接口的时候,我们所要做的就是:

# should go in config/initializers/mime_types.rb 
Mime.register_alias "text/html", :iphone 
 
class ApplicationController < ActionController::Base 
 before_filter :adjust_format_for_iphone 
 
 private 
  def adjust_format_for_iphone 
   if request.env["HTTP_USER_AGENT"] && request.env["HTTP_USER_AGENT"][/(iPhone|iPod)/] 
    request.format = :iphone 
   end 
  end 
end 
 
class PostsController < ApplicationController 
 def index 
  respond_to do |format| 
   format.html  # renders index.html.erb 
   format.iphone # renders index.iphone.erb 
  end 
 end 
end

  你完全可以在config/initializers/mime_types.rb里面注册自己的mime type类型的映射,这个文件默认已经提供了。

  Action Pack: Record identification

  为了驱使你使用基于资源的映射,我们对资源映射的controller和view的URL处理进行了大量的简化。我们添加了大量的命名约定,让你可以直接把model对象转化为资源映射的路由,例如:

来源:javaeye    作者:robbin    责编:豆豆技术应用

正在加载评论...