Bonjour à tous,
Je reviens vers vous car je fais face à un petit contretemps.
J’ai une liste qui regroupe toutes les offres de l’utilisateur qu’il peut ensuite gérer (supprimer, modifier, etc) et une des possibilités qu’il a lui permet de cocher une case afin de sélectionner plusieurs offres pour pouvoir les renouveler.
Malheureusement, l’update ne fonctionne pas, tout simplement.
<?php
/**
* @Route("renouveler-offre", name="renewOffer")
*/
public function renewOffer(Request $request, EntityManagerInterface $entity)
{
if($request->isXmlHttpRequest())
{
$id = explode(',', $request->get('data'));
for($i = 0; $i < count($id); $i++)
{
$jobOffer = $entity->getRepository(JobOffer::class)->findOneBy(array(
'id' => $id[$i]
));
$entity->persist($jobOffer);
dump($jobOffer);
$newRenewalDate = $jobOffer->getRenewalDate()->add(new \DateInterval($this->getParameter('datetime_interval')));
dump($jobOffer);
$jobOffer->setRenewalDate($newRenewalDate);
}
$entity->flush();
$this->addFlash('success', 'Toutes les annonces sélectionnées ont été renouvelées');
return new JsonResponse(array(
'url' => $this->generateUrl('manageOffers')
));
}
}
?>
Ma date de renouvellement se met bien à jour dans ma boucle mais, pour une raison que j’ignore, $entity->flush()
ne semble pas fonctionner. J’ai essayé de le mettre dans la boucle mais cela donne le même résultat.
Du coup, est-ce qu’il y a une manière spécifique de faire un update multiple ?
+0
-0