Bonjour à tous,
J'ai un problème, j'ai deux entités dans mon application Evaluation et Rubrique avec une relation ManyToMany entre ces 2 entités. La relation intermédiaire EvaluationRubrique contient un champ note. Voici le code de mes entités:
Entité: Evaluation.php
Décrivez ici votre code ou ce que vous cherchez à faire
<?php
namespace Gpa\FournisseurBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Evaluation
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Gpa\FournisseurBundle\Entity\EvaluationRepository")
*/
class Evaluation
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var \DateTime
*
* @ORM\Column(name="data_evaluation", type="date")
*/
/**
* @var string
*
* @ORM\Column(name="libelle", type="string", length=255)
*/
private $libelle;
private $dataEvaluation;
/**
* @var string
*
* @ORM\Column(name="modele", type="string", length=255)
*/
private $modele;
/**
* @var string
*
* @ORM\Column(name="conclusion", type="string", length=255, nullable=true)
*/
private $conclusion;
/**
* @var string
*
* @ORM\Column(name="fiche_evaluation", type="string", length=255, nullable=true)
*/
private $ficheEvaluation;
/**
* @ORM\OneToMany(targetEntity="Gpa\FournisseurBundle\Entity\EvaluationRubrique",mappedBy="evaluation")
*/
private $evaluationRubriques;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set dataEvaluation
*
* @param \DateTime $dataEvaluation
*
* @return Evaluation
*/
public function setDataEvaluation($dataEvaluation)
{
$this->dataEvaluation = $dataEvaluation;
return $this;
}
/**
* Get dataEvaluation
*
* @return \DateTime
*/
public function getDataEvaluation()
{
return $this->dataEvaluation;
}
/**
* Set modele
*
* @param string $modele
*
* @return Evaluation
*/
public function setModele($modele)
{
$this->modele = $modele;
return $this;
}
/**
* Get modele
*
* @return string
*/
public function getModele()
{
return $this->modele;
}
/**
* Set conclusion
*
* @param string $conclusion
*
* @return Evaluation
*/
public function setConclusion($conclusion)
{
$this->conclusion = $conclusion;
return $this;
}
/**
* Get conclusion
*
* @return string
*/
public function getConclusion()
{
return $this->conclusion;
}
/**
* Set ficheEvaluation
*
* @param string $ficheEvaluation
*
* @return Evaluation
*/
public function setFicheEvaluation($ficheEvaluation)
{
$this->ficheEvaluation = $ficheEvaluation;
return $this;
}
/**
* Get ficheEvaluation
*
* @return string
*/
public function getFicheEvaluation()
{
return $this->ficheEvaluation;
}
/**
* Constructor
*/
public function __construct()
{
$this->evaluationRubriques = new \Doctrine\Common\Collections\ArrayCollection();
}
/**
* Add evaluationRubrique
*
* @param \Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique
*
* @return Evaluation
*/
public function addEvaluationRubrique(\Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique)
{
$this->evaluationRubriques[] = $evaluationRubrique;
return $this;
}
/**
* Remove evaluationRubrique
*
* @param \Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique
*/
public function removeEvaluationRubrique(\Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique)
{
$this->evaluationRubriques->removeElement($evaluationRubrique);
}
/**
* Get evaluationRubriques
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getEvaluationRubriques()
{
return $this->evaluationRubriques;
}
/**
* Set libelle
*
* @param string $libelle
*
* @return Evaluation
*/
public function setLibelle($libelle)
{
$this->libelle = $libelle;
return $this;
}
/**
* Get libelle
*
* @return string
*/
public function getLibelle()
{
return $this->libelle;
}
}
?>
Entité: Rubrique.php
<?php
namespace Gpa\FournisseurBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Rubrique
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Gpa\FournisseurBundle\Entity\RubriqueRepository")
*/
class Rubrique
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="designation", type="string", length=255)
*/
private $designation;
/**
* @var integer
*
* @ORM\Column(name="coef", type="integer")
*/
private $coef;
/**
* @ORM\OneToMany(targetEntity="Gpa\FournisseurBundle\Entity\EvaluationRubrique",mappedBy="rubrique")
*/
private $evaluationRubriques;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set designation
*
* @param string $designation
*
* @return Rubrique
*/
public function setDesignation($designation)
{
$this->designation = $designation;
return $this;
}
/**
* Get designation
*
* @return string
*/
public function getDesignation()
{
return $this->designation;
}
/**
* Set coef
*
* @param integer $coef
*
* @return Rubrique
*/
public function setCoef($coef)
{
$this->coef = $coef;
return $this;
}
/**
* Get coef
*
* @return integer
*/
public function getCoef()
{
return $this->coef;
}
/**
* Constructor
*/
public function __construct()
{
$this->evaluationRubriques = new \Doctrine\Common\Collections\ArrayCollection();
}
/**
* Add evaluationRubrique
*
* @param \Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique
*
* @return Rubrique
*/
public function addEvaluationRubrique(\Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique)
{
$this->evaluationRubriques[] = $evaluationRubrique;
return $this;
}
/**
* Remove evaluationRubrique
*
* @param \Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique
*/
public function removeEvaluationRubrique(\Gpa\FournisseurBundle\Entity\EvaluationRubrique $evaluationRubrique)
{
$this->evaluationRubriques->removeElement($evaluationRubrique);
}
/**
* Get evaluationRubriques
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getEvaluationRubriques()
{
return $this->evaluationRubriques;
}
}
?>
Entité: EvaluationRubrique.php
<?php
namespace Gpa\FournisseurBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* EvaluationRubrique
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Gpa\FournisseurBundle\Entity\EvaluationRubriqueRepository")
*/
class EvaluationRubrique
{
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity="Gpa\FournisseurBundle\Entity\Evaluation", inversedBy="evaluationRubriques")
*/
private $evaluation;
/**
* @ORM\Id
* @ORM\ManyToOne(targetEntity="Gpa\FournisseurBundle\Entity\Rubrique", inversedBy="evaluationRubriques")
*/
private $rubrique;
/**
* @var integer
*
* @ORM\Column(name="note", type="integer")
*/
private $note;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set note
*
* @param integer $note
*
* @return EvaluationRubrique
*/
public function setNote($note)
{
$this->note = $note;
return $this;
}
/**
* Get note
*
* @return integer
*/
public function getNote()
{
return $this->note;
}
/**
* Set evaluation
*
* @param \Gpa\FournisseurBundle\Entity\Evaluation $evaluation
*
* @return EvaluationRubrique
*/
public function setEvaluation(\Gpa\FournisseurBundle\Entity\Evaluation $evaluation)
{
$this->evaluation = $evaluation;
return $this;
}
/**
* Get evaluation
*
* @return \Gpa\FournisseurBundle\Entity\Evaluation
*/
public function getEvaluation()
{
return $this->evaluation;
}
/**
* Set rubrique
*
* @param \Gpa\FournisseurBundle\Entity\Rubrique $rubrique
*
* @return EvaluationRubrique
*/
public function setRubrique(\Gpa\FournisseurBundle\Entity\Rubrique $rubrique)
{
$this->rubrique = $rubrique;
return $this;
}
/**
* Get rubrique
*
* @return \Gpa\FournisseurBundle\Entity\Rubrique
*/
public function getRubrique()
{
return $this->rubrique;
}
}
?>
Je veux faire un formulaire dans lequel je vais renseigner une note dans un champ input à chaque rubrique de mon base de données.
Quelle est la démarche à suivre? Qu'est ce que je dois mettre dans le fichier EvaluationRubriqueType.php?