精華區beta Ruby 關於我們 聯絡資訊
出自我的Blog http://lightyror.blogspot.com/2006/09/blog-post.html Ruby on Rails 另一個讓我感到很驚訝的部份 就是他製作 lib 的想法,完全遵照 The Ruby Way 一切以為人為本 當你的程式越接近人的語言 那你程式就越好維護 不了解我的意思嗎? 給個小範例 if Time.now - session[:last_login_time] > 3600 上面這段代表什麼意思,如果上次 login 的時間距離現在的時間只要超過 3600 秒(也就是一小時)就成立 我們可以改成 if Time.now - session[:last_login_time] > 3600.seconds 上面這段什麼意思,跟上面一模一樣 我們還可以改成 if Time.now - session[:last_login_time] > 1.hours 上面這段什麼意思,跟上面一模一樣 最後最後我們還可以改成 Session[:last_login_time] < 1.hours.ago 所以陳奕迅的歌可以改成 10.years.ago 當然還有 1.hours + 2.days 這樣的搞法@@! 本 lib 是 Rails 裡面的 ActiveSupport::CoreExtensions::Numeric::Time 要在Ruby 裡面使用請先宣告 require 'active_support' 然後就可以使用啦 當然啦,沒有 metaprogramming 觀念的語言是搞不出這種玩意的:p -- lighty RoR 是一個介紹 lighttpd , SQLite , Ruby and Rails 的 Blog http://lightyror.blogspot.com/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.218.90.242 ※ 編輯: giive 來自: 61.218.90.242 (09/27 16:37) > -------------------------------------------------------------------------- < 作者: yzugsr (Bird) 看板: Ruby 標題: Re: 十年之前 時間: Wed Sep 27 16:42:37 2006 恕刪 我記得之前typo的month archive有點bug 好像是1.month = 30天 於是八月的archive會變成 8/1 0:00~8/30 23:59 然後8/31就不見了 XD 我之前自己架的時候有自己改code把他修正 現在不用typo了 不知道現在官方版本有沒有修正 日期用這樣的寫法感覺沒有很順 大月小月潤年那些 一不小心就會搞亂 不過看到typo裡 SimpleCache.new 1.hour 那麼簡單明瞭的敘述 真是一件賞心悅目的事 XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.216.175.232