/** * Add photos * * @param \RestBundle\Entity\Photo $photo */ public function addPhotos(\RestBundle\Entity\Photo $photo) { $photo->addTags($this); $this->photos[] = $photo; }
/** * Create a new Photo. * * @param array $parameters * * @return PhotoInterface */ public function post(array $parameters) { $photo = new Photo(); $manager = $this->om->getRepository('RestBundle:Tag'); $tagList = []; if (isset($parameters['tags'])) { foreach ($parameters['tags'] as $tag) { $tagObject = $manager->findOneBy(['caption' => trim($tag)]); if ($tagObject == null) { $tagObject = new Tag(); $tagObject->setCaption($tag); $this->om->persist($tagObject); } $tagList[] = $tagObject; } } $this->om->flush(); $photo->addTags($tagList); return $this->processForm($photo, $parameters, 'POST'); }