Skip to content

Instantly share code, notes, and snippets.

@ivanpierre
Last active August 29, 2015 14:19
Show Gist options
  • Save ivanpierre/ca8376d3acb014a4785e to your computer and use it in GitHub Desktop.
Save ivanpierre/ca8376d3acb014a4785e to your computer and use it in GitHub Desktop.
Un peu de PHP
// ici tu initialise $entity ?
$entity = new Code();
$form = $this->createForm(new CodeMiniType(), $entity, array(
'action' => $this->generateUrl('index'),
'method' => 'POST',
));
$form->handleRequest($request);
if ($form->isValid()) {
///////////////
// Ici code pour effacer. Devrait être dans une fonction
$em = $this->getDoctrine()->getManager();
// et ici entity vaut quelque chose par la grâce du saint esprit ????????
// probabelement handleRequest
$entity->getProprietaire();
// tu as déja ton manager... fait simple... j'imagine que ça lock la table....'
$repo = $em->getRepository('CodeLockCommonBundle:Code');
// $repo = $this
// ->getDoctrine()
// ->getManager()
// ->getRepository('CodeLockCommonBundle:Code');
// $entities est le tables des entités que tu veux effacer
$entities = $repo->findByProprietaire($entity);
// pour chaque $valor qui est l'entiter à marquer effacer'
foreach ($entities as $valor) {
$em->remove($valor);
}
// on ajoute le nouveau code
$em->persist($entity);
// commit tous les removes et l'ajout. Pas de test d'erreur ????
$em->flush();
// comme $em est local je pense que c'est bon de le fermer
// normalement la fermeture fait un flush
$em->close();
$msg = 'Code ajouté dans la base.';
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment