bonsoir,
j'ai une relation 1..* (ManyToMany) entres les chapitres et les questions. C'est a dire que un chapitre possède plusieurs questions et une question a un seul chapitre. Chaque question possède une réponse par projet (projet ->1..* ->reponseQuestion<-- 1..*<--questions). donc ce cas il faut que récupéré l'id du chapitre, de la question et de projet.
la classe Chapitres:
1 2 3 4 5 6 7 8 9 10 11
| class Chapitres
{
/**
* @ORM\OneToMany(targetEntity="Management\QuestionsBundle\Entity\Questions", mappedBy="chps" , cascade={"persist"})
*
*/
private $chpQuestions;
//ici les getters et les setters |
-la classe questions:
1 2 3 4 5 6 7 8 9 10 11 12
|
class Questions{
/**
* @ORM\ManyToOne(targetEntity="Management\ChapitresBundle\Entity\Chapitres", inversedBy="chpQuestions")
* @ORM\JoinColumn(nullable=false)
* @Assert\NotBlank(message=" La spécification du chapitre est obligatoire")
*/
private $chps;
} |
la classe ResponseQuestions:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
class ResponseQuestions{
/**
* @ORM\ManyToOne(targetEntity="Management\ProjetsBundle\Entity\Projets", inversedBy="projetResponse")
* @ORM\JoinColumn(nullable=false , name="projets_id" , referencedColumnName="id_projets")
* @Assert\NotBlank(message=" ce champs est obligatoire")
*
*/
private $projet;
/**
* @ORM\ManyToOne(targetEntity="Management\QuestionsBundle\Entity\Questions", inversedBy="Response")
* @ORM\JoinColumn(nullable=false, referencedColumnName="id_questions" , name="questions_id")
* @Assert\NotBlank(message=" ce champs est obligatoire")
*
*/
private $questions;
} |
formType:
1 2
| $builder
->add('reponse','text'); // concernant la classe reponseQuestions |
=> dans ma vue "show" (url /2/show) j'ai les informations du chapitre et de ces questions sont bien affiché.Dans la même page j'ai crée un form de réponse qui permet de répondre a tous les questions de ce chapitre. Le probléme que j'en sais pas comment récupérer l'id de chapitre qui en cours d'affichage! Si j'arrive a récupérer l'id de chapitre donc je peux récupéré l'id de la question grâce a l’instanciation du classe question que j'ai défini dans la classe Chapitres" $chpQuestions".
Possible de récupérer l'id partir de cette instruction:
$chapitres= $em->getRepository('ChapitresBundle:Chapitres')->find($id);
Merci
Partager