我有一个表单类型,我将添加一个实体并添加多个属性
$builder ->add('number', 'entity', array(
'class' => 'TelnOperatorBundle:Numberrange',
'property' => 'De'
'multiple' => false,));
在属性中我想添加另一个字段,即
$builder ->add('number', 'entity', array(
'class' => 'TelnOperatorBundle:Numberrange',
'property' => 'De','A'
'multiple' => false,));
我怎么能这样做?
->add('subnumbers', 'collection', array('type' => new SubnumberType(),
'allow_add' => true,
'allow_delete' => true))
答案 0 :(得分:0)
您不能,属性仅允许string
作为参数:http://symfony.com/doc/master/reference/forms/types/entity.html#property
您的案例中的解决方案是将property
留空,然后在您的实体中实施__toString()
方法。
首先更改您定义表单类型的方式(将空值传递给property):
$builder ->add('number', 'entity', array(
'class' => 'TelnOperatorBundle:Numberrange',
'multiple' => false,));
其次,在__toString()
实体中定义TelnOperatorBundle:Numberrange
函数:
public function __toString()
{
return $this->De . ' : ' . $this->A;
}