public function addManualEntry() { $objectManager = $this->getEntityManager(); $hydrator = new DoctrineHydrator($this->getEntityManager()); $blogPost = new ChildParent(); $tags = array(); $tag1 = new Children(); $tag1->setName('PHP'); $tags[] = $tag1; $tag2 = new Children(); $tag2->setName('STL'); $tags[] = $tag2; $data = array('name' => 'The best blog post in the world !', 'tags' => $tags); $blogPost = $hydrator->hydrate($data, $blogPost); $objectManager->persist($blogPost); $objectManager->flush(); }
public function update($id, $data) { $this->createServiceEvent()->setEntityId($id)->setEntityClass($this->getEntityClass())->setDescription("Lead Edited"); $em = $this->getEntityManager(); $leadRepository = $em->getRepository("Lead\\Entity\\Lead"); $entity = $leadRepository->findOneBy(['id' => $id]); $hydrator = new DoctrineHydrator($em); try { $lead = $hydrator->hydrate($data, $entity); $em->persist($lead); $em->flush(); } catch (\Exception $e) { $this->logError($e); return $this->getJsonErrorResponse('json')->errorHandler(400, "Invalid Submission. " . $e->getMessage(), $data); } if ($lead) { $this->getServiceEvent()->setEntityId($lead->getId())->setMessage("Lead #" . $lead->getId() . " edited."); $this->logEvent("EditAction.post"); } return $lead; }
/** * * @param string $action * @param string $message * @return \Event\Entity\Event */ protected function getEvent($action = null, $message = null) { if (!$this->event) { if (!$action) { $action = 'Unknown ' . get_called_class() . ' Event'; } if (!$message) { $message = 'Unknown ' . get_called_class() . ' Event'; } $data = ['event' => $action, 'occurred' => new \DateTime('now'), 'message' => $message]; try { $event = new Event(); $hydrator = new DoctrineHydrator($this->getEntityManager(), get_class($event)); $event = $hydrator->hydrate($data, $event); $entityManager = $this->getEntityManager(); $entityManager->persist($event); $entityManager->flush(); $this->event = $event; } catch (\Exception $e) { // fail silently return false; } } return $this->event; }