我有一個模型,Entity
,我構建了一個EntityMapper
和一個Entity
類(我只是學習使用Zend Framework並遵循教程)。 Entity
類有一個setName
方法,我想要它做的是檢查數據庫中是否有另一個「實體」具有相同的名稱,並在這種情況下引發異常或什麼。檢查Model類中的重複值
所以,如果我理解正確,數據庫調用應該只在Mapper類中。因此,內setName
,我應該這樣做:
$entity = new Application_Model_EntityMapper();
if ($entity->checkDuplicateName($name, $this->_id))
$this->_name = $name;
else
throw new Exception(...);
return $this;
,並把它實際在映射類的新方法,查詢的代碼? (當然,如果「實體」是新的或者它已經有一個id,那麼查詢應該是不同的,但這不是我的問題的重點)。
我知道我可以通過幾種方式做到這一點,但我的目標是儘可能地調整框架的約定。
只是一點點信息補充:結構模型/映射器/ ActiveRecord和ZendFramework的「快速入門」教程完全一樣。 – 2011-01-11 08:35:38