尝试验证选择字段(多个复选框)我有这个问题:
"Notice: Array to string conversion "
我的验证文件如下所示:
Cgboard\AppBundle\Forms\UploadImageEntity:
properties:
image:
...
cgnetworks:
- Choice:
choices: [flickr, tumblr] //<--- this is giving me problems!!!
我的表单实体类(我现在不打算将其保存到db):
class UploadImageEntity {
public $image;
public $cgnetworks;
}
我的表格类:
class UploadImageForm extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('image', 'file')
->add('cgnetworks', 'choice', [
'choices' => $this->getCgNetworks(),
'multiple' => TRUE,
'expanded' => TRUE
]
);
}
public function getCgNetworks()
{
return [
'tumblr' => 'Tumblr',
'flickr' => 'Flickr'
];
}
}
有什么想法吗?
答案 0 :(得分:3)
也许您需要在验证中指定多个
cgnetworks:
- Choice:
choices: [flickr, tumblr] //<--- this is giving me problems!!!
multiple: true
答案 1 :(得分:0)
检查您的实体字段getter。如果你有别的东西而不是
public function getValue(){
return $this->value;
}
您可以出现此错误。
表单构建器使用get和set实体方法,这就是您需要返回允许值的原因。