Rails 2.0的一些变化
03月 23, 2008 on 9:03 pm | In Ruby |1.ActionView的变化:
模板文件默认扩展名从.rhtml改成了.html.erb
新的规则是:[动作名.扩展名.渲染引擎],因此黙 认模板文件就是类似view.html.erb.当然view.rhtml也能正常工作.
比如我希望用户访问/post/rss/1.atom时,调用builder来解析,我的模板文件应该是rss.xml.builder.这个builder很方便,创建Rss时非常爽。语法像这样:
xml.instruct!
xml.rss(”version”=>”2.0″,
“xmlns:dc”=>”http://purl.org/dc/elements/1.1/”) do
xml.channel do
xml.title “renlu.xu ’s blog”
xml.link(url_for(:action=>”start”,:only_path=>false))
xml.description “My life My love”
xml.language “zh_CN”
xml.ttl 60for event in @posts do
xml.item do
xml.title(event.title)
xml.description(event.body)
xml.pubDate(event.created_at.to_s(:rfc822))
xml.guid(event.id)
xml.link(”http://…..#{event.id}”)
end
end
end
end
2. 一些Helper改进了
我能感觉到的是,在生成表单时,生成时,用form_tag能生成一个表单,这个表单默认带了一个隐藏的域。这个域的值是一个加密的串,用来验证当前表单提交的合法性。这一点很好。yahoo的产品体系中,也有类似的检查,叫crumb机制。存有不包含crumb的from表单提交时,程序是不能通过安全审查的。
3 Router的改进。
将用分号来区隔的方法去掉了。比如/post/view/1:edit这种就去掉了。统一成了斜线方式:/post/view/1/edit。
经过我测试,rails的route好像存在一个很可耻的Bug…..有些地址死活不能被认出来…
另外,route需要Sqlite3的支持。
4 默认的数据库支持类型据说换成sqlite3了。render_text 被去掉了
5… 不少Bug 仍然性格倔强地拒绝被修改….
No Comments yet »
发表评论
Powered by WordPress with Pool theme design by Borja Fernandez.
Entries and comments feeds.
Valid XHTML and CSS. ^Top^