Forms 如何处理选择字段中的多项选择-Symfony 2
情况:我的表单中有以下代码:Forms 如何处理选择字段中的多项选择-Symfony 2,forms,symfony,Forms,Symfony,情况:我的表单中有以下代码: $builder->add('Type', 'choice', array ( 'label' => 'Enter body types', 'choices' => array('Sedan'=>'Sedan','Wagon'=>'Wagon',...), 'multiple' => true, )) 问题:
$builder->add('Type', 'choice', array
(
'label' => 'Enter body types',
'choices' => array('Sedan'=>'Sedan','Wagon'=>'Wagon',...),
'multiple' => true,
))
问题:当用户选择多个值(例如Sedan和carg)时,由于明显的原因会引发异常“数组到字符串转换”
问题:有没有办法添加一些表单选项和可以处理数组到字符串转换的函数?我的意思是类似于这个:
'someOption' => function ($selectedArray)
{
$returnString = "";
for ($selectedArray as $singleValue){ $returnString = $returnString . ",". $singleValue }
return $returnString;
}
这里的问题是,字段
类型是一个字符串,并且在表单中允许多个值
当窗体处理多个可选字段时,您使用的不是一个简单的值,而是一个值数组。当您在实体字段中设置此数组并尝试将此实体保存到数据库中时,由于字段设计为简单字符串,php将尝试获取值的字符串版本。。。比如:(string)array(),这在PHP中是不可行的:)
您可以将值定义为或应禁用此多重选择:)
注意:
如果需要选择多个数组,则表单应处理数组
价值观您的实体应该使用数组映射来处理这个问题(如
说)
这里的问题是,字段类型是一个字符串,并且在表单中允许多个值
当窗体处理多个可选字段时,您使用的不是一个简单的值,而是一个值数组。当您在实体字段中设置此数组并尝试将此实体保存到数据库中时,由于字段设计为简单字符串,php将尝试获取值的字符串版本。。。比如:(string)array(),这在PHP中是不可行的:)
您可以将值定义为或应禁用此多重选择:)
注意:
如果需要选择多个数组,则表单应处理数组
价值观您的实体应该使用数组映射来处理这个问题(如
说)
您的实体是如何设计的?我指的是包含属性$类型的实体。您的实体是如何设计的?我指的是包含属性$type的实体。