【发布时间】:2014-05-08 15:20:26
【问题描述】:
我用 Symfony2 制作了一个 Web 应用程序,其中一个 Pais 有一个 Arraycolletion of Suits:
派斯:
/**
* @ORM\OneToMany(targetEntity="Acc\ApssBundle\Entity\Suit", mappedBy="pais", cascade={"persist", "remove"})
* @Assert\Valid()
*/
protected $suits;
/**
* Constructor
*/
public function __construct()
{
$elements = array(new Suit('Suit1'), new Suit('Suit2'), new Suit('Suit3'), new Suit('Suit4'), new Suit('Suit5'));
$this->suits = new \Doctrine\Common\Collections\ArrayCollection( $elements);
}
西装
/**
* @ORM\ManyToOne(targetEntity=Acc\ApssBundle\Entity\Pais", inversedBy="suits")
*/
public $pais;
PaisSuitType
$builder->add('suits', 'collection', array(
'options' => array('data_class' => 'Acc\ApssBundle\Entity\Suit'),
'prototype' => true,
));
控制器:
$paises = array($es = new Pais(),
$it = new Pais(),
$mx = new Pais(),
$br = new Pais()
);
foreach ($paises as $pais){
$form[$i] = $this->createForm(new PaisType(),$pais);
$forms[ 'form'.(string)$i ] = $form[$i]->createView() ;
$i++;
}
树枝模板:
{% for suit in form0.suits %}
<td align = "center">{{ form(suit) }}</td>
{% endfor %}
错误发生在树枝模板中。
【问题讨论】:
-
与您当前的问题不同,您在
$pais的 orm 中没有JoinColumn
标签: php symfony checkbox entity