Ich habe eine Entität Hall
, die entweder eine andere hall
(Subhall) oder eine stand
begrüßen kann.Wie listet man die Entität in Form auf
Ich bin mit dem hall
Formular fest (oder zumindest ist es das, was ich denke, bearbeitet werden muss). Ich kann nicht herausfinden, wie es ein <select>
aller Anzeigen haben hall
mit parent=0
Ich brauche auch eine Standardoption, die mit 0
als Wert leer sein wird
Hier meine Dateien sind:
Halle Entity :
<?php
namespace SalonBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Hall
*
* @ORM\Table(name="hall")
* @ORM\Entity(repositoryClass="SalonBundle\Repository\HallRepository")
*/
class Hall {
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $idHall;
/**
* @var string
* @ORM\Column(name="name", type="string", length=255)
*/
private $name;
/**
* @var integer
* @ORM\Column(name="parent", type="integer", options={"default":0})
*/
private $parent;
/**
* @var
* @ORM\OneToMany(targetEntity="SalonBundle\Entity\Stand", mappedBy="hall")
*/
private $stand;
public function __construct()
{
$this->stand = new \Doctrine\Common\Collections\ArrayCollection();
}
/**
* Get idHall
* @return integer
*/
public function getIdHall()
{
return $this->idHall;
}
/**
* Set name
* @param string $name
* @return Hall
*/
public function setName($name)
{
$this->name = $name;
return $this;
}
/**
* Get name
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Set parent
* @param integer $parent
* @return Hall
*/
public function setParent($parent)
{
$this->parent = $parent;
return $this;
}
/**
* Get parent
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* Add stand
* @param \SalonBundle\Entity\Stand $stand
* @return Hall
*/
public function addStand(\SalonBundle\Entity\Stand $stand)
{
$this->stand[] = $stand;
return $this;
}
/**
* Remove stand
* @param \SalonBundle\Entity\Stand $stand
*/
public function removeStand(\SalonBundle\Entity\Stand $stand)
{
$this->stand->removeElement($stand);
}
/**
* Get stand
* @return \Doctrine\Common\Collections\Collection
*/
public function getStand()
{
return $this->stand;
}
/**
* toString
* @return string
*/
public function __toString() {
return $this->getName();
}
}
Halle Form:
<?php
namespace SalonBundle\Form;
use SalonBundle\Entity\Hall;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class HallType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name')
->add('parent') // Need to complete this part
;
}
/**
* @param OptionsResolver $resolver
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'SalonBundle\Entity\Hall'
));
}
}
Wie soll ich fortfahren?
Gut, fand es heraus dank dem Code exepleple ... Gerade die freie Wahl jetzt verfehlend ... :) – Preciel
'erforderlich' => falsch – Phex