Bonjour à tous,
Actuellement en train d'apprendre à utiliser Symfony (V5.2), j'ai un peu de mal à comprendre les relations avec Doctrine
j'ai actuellement 2 Entitées Projects et Clients avec une relation OneToMany (1 client peut avoir plusieurs projects et 1 projet ne peut avoir qu'un client)
j'aimerais que dans la fiche client je puisse recuperer tous les projets associés a ce client ,
jai essayé dans mon clientcontroller de faire un "client->getprojects()" mais à chaque fois ça me retourne un ArrayCollection avec aucun element à l'interieur:
voici mon client contoller:
/**
@Route("/{id}", name="clients_show", methods={"GET"})
*/
public function show(Clients $client): Response
{
$projects = $client->getProjects();
dump($projects);
return $this->render('clients/show.html.twig', [
'client' => $client,
]);
}
voici le dump:
Doctrine\ORM\PersistentCollection {#742 ▼
-snapshot: []
-owner: App\Entity\Clients {#869 ▼
-id: 2
-name: "Cli2"
-projects: Doctrine\ORM\PersistentCollection {#742}
}
-association: array:15 [ …15]
-em: Doctrine\ORM\EntityManager {#679 …11}
-backRefFieldName: "clients"
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#866 …}
-isDirty: false
-elements: []
}
}
je suis interressé par toutes infos et je vous remercie par avance du temps que vous prendrez à analiser ma requete
Cordialement Bapt
Bonjour,
Pour commencer, ta relation est certainement ManyToOne et non OneToMany.
Ensuite, vérifie que tu as bien des éléments dans ton tableau $clients->getProjects()
. Si c'est le cas essaye d'afficher le contenu de ton tableau avec une boucle dans ton template Twig (je te renvoies à la doc de twig qui très bien faite: https://twig.symfony.com/).
A noter pour afficher un dump dans Twig, c'est :
{{ dump(var) }}
En espérant t'avoir aidé, si tu as d'autres questions n'hésite pas à les poser.