선택 항목의 내용을 동적으로 생성하고 싶습니다.symfony의 동적 선택 영역
필자는 능력 필드가있는 Offre Entity를 보유하고 있습니다. 각 역량은 GroupeCompetences라는 역량 그룹 내에 있습니다.
GroupeCompetences Select 상자가있는 양식을 만들고 싶습니다.이 상자는 해당 그룹에있는 역량의 두 번째 선택 상자를 제공합니다.
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Competence
*
* @ORM\Table(name="competence")
* @ORM\Entity(repositoryClass="AppBundle\Repository\CompetenceRepository")
*/
class Competence
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="GroupeCompetences", inversedBy="competences")
*/
private $groupeCompetence;
/**
* @var string
*
* @ORM\Column(name="nom", type="string", length=100)
*/
private $nom;
//ALL GETTERS AND SETTERS ...
}
GroupeCompetences 법인
/**
* Offre
*
* @ORM\Table(name="offre")
* @ORM\Entity(repositoryClass="AppBundle\Repository\OffreRepository")
*/
class Offre
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="titre", type="string", length=100)
*/
private $titre;
/**
* @var Competence
*
* @ORM\ManyToOne(targetEntity="AppBundle\Entity\Competence")
*/
private $competence;
//ALL GETTERS AND SETTERS ...
}
능력 엔티티
Offre 법인 :
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
/**
* GroupeCompetences
*
* @ORM\Table(name="groupe_competences")
* @ORM\Entity(repositoryClass="AppBundle\Repository\GroupeCompetencesRepository")
*/
class GroupeCompetences
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\OneToMany(targetEntity="Competence", mappedBy="groupeCompetence")
*/
private $competences;
/**
* @var string
*
* @ORM\Column(name="nom", type="string", length=100)
*/
private $nom;
//ALL GETTERS AND SETTERS ...
}
폼 (내가 만들 수 없습니다 여기
내 엔티티 GroupeCompetences 아니기 때문에<?php
namespace AppBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Doctrine\ORM\EntityRepository;
use AppBundle\Entity\Offre;
class OffreType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('titre')
->add('competence')
이것은 Offre 법인에서 직접 을 제가 설명을) 작동하지 않습니다
->add('groupeCompetences', EntityType::class, array(
'class' => 'AppBundle:GroupeCompetences',
'choice_label' => 'nom',
'placeholder' => 'Choisissez un groupe de compétences',
))
}
}
감사를 사전에 모든 도움을! : =)
이 을 볼 http://stackoverflow.com/questions/43858460/entity-is-empty-in-formmodifier-on-form-events입니다 – rafrsr
예를 들어 회의 주체가 두 엔티티 (의사 및 고객)를 포함하는 것과 같은 경우는 아닙니다. 필자의 경우 나는 능력 집단과 연결된 실체 (역량)가 하나뿐입니다. 그리고 그 그룹은 외부 단체와 연결되어 있지 않습니다. – zskiredj
사례가 동일하지는 않지만 접근 방식은 유사합니다. 필요한 변경을 할 수 있습니다. – rafrsr