我收到消息:
类型"数组的预期参数或(\ Traversable和\ ArrayAccess)"," string"给定
执行此代码时:
$form = $this->createFormBuilder([], ['csrf_protection' => false])
->add('collectionField', 'collection', [
'type' => 'text',
'constraints' => [new Type('array')]]
)
->add('integerField', 'integer', [
'constraints' => [new Type('integer')]]
)
->getForm();
$form->submit(['collectionField' => 'error', 'integerField' => 'error']);
这是因为我将字符串数据传递给" collectionField"字段。
但是当我将数组传递给" integerField":
时$form->submit(['collectionField' => [], 'integerField' => []]);
我收到正常消息"此值无效。"。
我认为行为应该是一样的。当然,我可以做一些工作并找到一些解决方案,但我有兴趣知道它是一个错误还是我错过了什么。
答案 0 :(得分:1)
确定。自己回答我的问题。它是一个错误,将在最近的Symfony版本中修复。 https://github.com/symfony/symfony/pull/13851