protected function doAddToAllTemplates(FeatureModel $feature) { $templates = TemplateQuery::create()->find(); foreach ($templates as $template) { $feature_template = new FeatureTemplate(); if (null === FeatureTemplateQuery::create()->filterByFeature($feature)->filterByTemplate($template)->findOne()) { $feature_template->setFeature($feature)->setTemplate($template)->save(); } } }
/** * @param Feature $feature The feature object to add. */ protected function doAddFeature($feature) { $featureTemplate = new ChildFeatureTemplate(); $featureTemplate->setFeature($feature); $this->addFeatureTemplate($featureTemplate); // set the back reference to this object directly as using provided method either results // in endless loop or in multiple relations if (!$feature->getTemplates()->contains($this)) { $foreignCollection = $feature->getTemplates(); $foreignCollection[] = $this; } }