我有一個與Doctrine 2和Zend Framework相關的問題。當使用Doctrine 2和Zend Framework時,應該在哪裏放置業務邏輯
如果您在默認情況下使用沒有Doctrine的Zend Framework,則將業務邏輯放入模型中。但是因爲Doctrine 2確實有實體應該在哪裏放置商業邏輯?
我第一次創建了實體管理器調用實體的模型。但是當我想爲沒有數據庫調用的模型編寫單元測試時。我需要將實體經理移動到控制器。但我在我的控制器中獲得業務邏輯,這是不好的。
下面的代碼顯示的控制器操作的一部分:
$customerAddress = $this->_model->save($values, $id);
$this->_em->persist($customerAddress);
// Update default billing address
$defaultBilling = $this->_model->saveDefaultBilling($values, $customerAddress);
if ($defaultBilling != FALSE) {
$this->_em->persist($defaultBilling);
}
// Update default shipping address
$defaultShipping = $this->_model->saveDefaultShipping($values, $customerAddress);
if ($defaultShipping != FALSE) {
$this->_em->persist($defaultShipping);
}
$this->_em->flush();
有人可以說什麼是這個問題的最佳做法是什麼? Thx
我認爲這是最好的,所有的學說代碼移出控制器,進入領域類,請查看我的博客文章:http://www.cobbweb.me/2010/11/integrate-doctrine- 2-zend-framework-application/ – Cobby 2010-11-23 00:15:00