2013-03-19 100 views
0

我有兩個相關的模型,酒吧,其中酒吧$belongsTo。現在每個Foo必須具有,即兩者必須同時創建。使用CakePHP的建模系統,是否可以在創建Foo(可能通過saveAll())時自動創建Bar或者我應該將該功能寫入Foo::afterSave()

感謝您的幫助。

回答

0

是的 - 只是使用建立您的數據爲Foo和酒吧,然後saveAll()

0

添加到Dave的答案。

如果您的數據庫表支持事務,通常在MySql中爲InnoDB storage engine。您還可以告訴Cake嘗試一次保存兩條記錄。如果一個失敗了,另一個被恢復。你需要通過array('atomic' => true)作爲第二個參數saveAll()

$this->ModelName->saveAll($this->request->data, array("atomic" => true)); 

CookBook

atomic: If true (default), will attempt to save all records in a single transaction. 
Should be set to false if database/table does not support transactions.