public function save() { // use banner image foreach ($this->bannerImageIdList as $bannerImageId => $isUse) { $bannerUseImage = Doctrine::getTable('BannerUseImage')->retrieveByBannerAndImageId($this->getObject()->getId(), $bannerImageId); if ($isUse) { if (!$bannerUseImage) { $bannerUseImage = new BannerUseImage(); } $bannerUseImage->setBannerId($this->getObject()->getId()); $bannerUseImage->setBannerImageId($bannerImageId); $bannerUseImage->save(); continue; } if ($bannerUseImage) { $bannerUseImage->delete(); } } return parent::save(); }