爲什麼A/R設計一旦發生變化就會保持更改爲關係,而不是等待保存操作? (軌3.1.4)將設置關係設爲零直接持續的結果
...
考慮準備賬面以下機型和作者:
class Book < ActiveRecord::Base
has_one :author
end
class Author < ActiveRecord::Base
belongs_to :book
end
和以下種子數據:
a = Author.new(:name => "Joe Author")
Book.create(:title => "The Book Title", :author => a)
...
在讀取書籍之後,可以調整標題,直到調用Book.save之前,什麼都不會持續。
但是,當您嘗試調整與作者的關係(例如將其設置爲零)時,activerecord會立即保留更改。
這看起來像其他A/R類似的實現,如mongoid設計,並重復。爲什麼A/R旨在在關係發生變化時立即對其進行更改,而不是等待保存操作?