繁体   English   中英

以symfony2形式添加多个属性

[英]add more than one property in a form symfony2

我有一个表单类型,在其中我将添加一个实体并添加多个属性

$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))

您不能,属性仅允许将string作为参数: http : //symfony.com/doc/master/reference/forms/types/entity.html#property

您的解决方案是将property留为空白,然后在Entity中实现__toString()方法。

首先更改定义表单类型的方式(将空白值传递给属性):

$builder ->add('number', 'entity', array(
              'class'    => 'TelnOperatorBundle:Numberrange',
              'multiple' => false,));

其次,在TelnOperatorBundle:Numberrange实体中定义__toString()函数:

public function __toString()
{
    return $this->De . ' : ' . $this->A;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM