The Last Day Of Summer

.NET技术 C# ASP.net ActiveReport SICP 代码生成 报表应用 RDLC
posts - 305, comments - 1913, trackbacks - 76, articles - 3
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理
 Active Support是一组有Rails提供的库,Active Supportruby内建的一些类作了扩展,这次我们来看看其中一些最常用到的功能。

 1.       对数字类型的扩展

Fixnum类增加了两个方法:even?odd?

同时增加了缩放的方法:

puts 20.bytes #=> 20

puts 20.kilobytes #=> 20480

puts 20.megabytes #=> 20971520

puts 20.gigabytes #=> 21474836480

puts 20.terabytes #=> 21990232555520

还有基于时间的缩放,将接受的数值转换为对应的秒,month()year()方法得到的是近似值,月被假定为有30天,年被假定为365天。

puts 20.minutes #=> 1200

puts 20.hours #=> 72000

puts 20.days #=> 1728000

puts 20.weeks #=> 12096000

puts 20.fortnights #=> 24192000

puts 20.months #=> 51840000

puts 20.years #=> 630720000

2.       时间的扩展

Time类增加了一些方法,来帮助我们进行时间的运算

now = Time.now

puts now

puts now.ago(3600)

puts now.at_beginning_of_day

puts now.at_beginning_of_month

puts now.at_beginning_of_week

puts now.at_beginning_of_year

puts now.at_midnight

puts now.change(:hour => 13)

puts now.last_month

puts now.last_year

puts now.midnight

puts now.monday

puts now.months_ago(2)

puts now.months_since(2)

puts now.next_week

puts now.next_year

puts now.seconds_since_midnight

puts now.since(7200)

puts now.tomorrow

puts now.years_ago(2)

puts now.years_since(2)

puts now.yesterday

 

另外还提供了Timezone的类,其中包含有时区的名字和偏移量。还提供了时区的列表。详细请参考Rdoc文档。

3.       string扩展

Rails扩展了string,使得能够进行单数复数间的转换,小写或大小写混排等等,下面是常用的:

puts "cat".pluralize #=> cats

puts "cats".pluralize #=> cats

puts "erratum".pluralize #=> errata

puts "cats".singularize #=> cat

puts "errata".singularize #=> erratum

Feedback

#1楼    回复  引用    

2008-02-20 16:44 by qtybb [未注册用户]
没想到西安也有人弄RAILS.

#2楼 [楼主]   回复  引用  查看    

2008-02-20 17:07 by Cure      
@qtybb
呵呵,thoughtworks在西安也有,他们可是一直在推rails的。

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索


相关链接: