class Parent extends DataMapper { function save($object = '', $related_field = '') { $needs_update = ($this->shared_field === $this->stored->shared_field); $ret = parent::$save(); if($need_update && $ret) { if($this->other_object->get()->exists()) { $this->other_object->shared_field = $this->shared_field; $this->other_object->save(); } // repeat for each object } return $ret; } }