2007年1月4日 星期四

Rails的ActiveSupport


Rails的ActiveRecord大家已經很熟悉,可是實際上Rails Team他們卻慢慢地在提供新的功能讓大家感受不一樣的寫程式習慣。我相信有些功能是很實用,但是避免大家會依賴syntax suger,還是要稍微解釋一下裡面幹了些什麼,如此你可以自行判斷怎樣才不會做太多重複的事。


雖然這個函示庫是給Rails使用的,不過我會建議大家多利用在任何型態的專案裡,如此就很快地可以"write like a ruby programmer"。


請參考 http://lightyror.blogspot.com/2006/09/blog-post.html

更多的資料請參考 http://api.rubyonrails.org/


舉個例:

[code]
irb(main):001:0> require 'active_support'
=> true
irb(main):002:0> 10.years.ago
=> Sun Jan 05 03:57:34 +0800 1997
irb(main):003:0> 6.hours.ago
=> Fri Jan 05 09:57:44 +0800 2007
irb(main):004:0> 6.hours.since
=> Fri Jan 05 21:57:51 +0800 2007
[/code]

當然不只十年之前,之後也可以
以下列出大略的method以及他們的作法

時間


所有的數字(包括小數)都繼承自class Numeric,而前面的範例就是Fixnum的method

  1. 計算秒數:呼叫這些methods會傳回一個整數,表示秒數


    • second(s)

    • minute(s)

    • hour(s)

    • day(s)

    • week(s)

    • year(s)

    • [ruby]
      60.seconds==1.minute
      [/ruby]


  2. 從::Numeric計算日期:從任何繼承自::Numeric的物件可以計算出日期,這些methods傳入::Time的物件便可以從該時間計算


    • until,ago:向前計算

    • since,from_now:向後計算


  3. 從::Time物件計算時間:以下method傳入任何繼承自::Numeric的數值。其實會呼叫到上面的method。


    • until,ago:向前計算



    • since,from_now:向後計算


  4. ::Time更改數值:


    • change


沒有留言 :

張貼留言