给定一个域对象(例如,Person),该对象是否应该包含它的数据映射器(Person_Mapper)?
例如,我可以通过以下两种不同的方式进行停用操作:
$mapper = new Person_Mapper();
$person = $mapper->load(1);
$person->active = false;
$mapper->save($person);
或者像这样:
$mapper = new Person_Mapper();
$person = $mapper->load(1);
$person->inactivate();
class Person
{
public function inactivate()
{
$this->active = false;
$this->_mapper->save($this);
}
}