11/27/2006

What's new in Rail 1.2's ActiveRecord

Rails 1.2 RC 出了,我們也該好好看看多了什麼有趣的東西。基於我認為 Active Record 是 Rails 的核心價值,所以我先從 Active Record 開始說起。就如我剛剛說的 Active Record 是 Rails 的核心價值,在企業中,核心價值是很難允許修改的,所以這次的改版對於 Active Record 修改非常少 XD 我發現幾個比較重要的改變。

  1. Condition find 變得更加 Rails
    原本還很 SQL Like 的 Condition find
    Person.find(:all, :conditions => [ "last_name = ? and status = ?", "Catlin", 1 ])
    變成
    Person.find(:all, :conditions => { :last_name => "Catlin", :status => 1 })
  2. Has_through 更加好用
    支援 :uniq => true , << , delete ,改天嘗試看看能不能取代 has_and_belongs_to_many
  3. Has_one support dependent
    一共有
    :destroy, :delete, and :nullify 幾個 option
基本上在 Active Record 端修改的不多,不過光是 condition find 跟 has_through 的進步就值得我們更新到 Rails 1.2。

2 則留言:

匿名 提到...

那老版代码岂不是不能正常工作了?

thegiive 提到...

他並沒有砍掉 1.1 的某些功能,但是他有加入一些新功能,並且希望大家漸漸的不使用某些不建議的功能。