有人可以解释为什么我收到此错误吗?我是第一次使用CollectionType。使用了documentation
这是我尝试使用CollectionType的部分:

$builder->add('cc', CollectionType::class, [
         'required' => false,
         'entry_type' => EmailType::class
])

这是我的要求:
{
    "email" => "[email protected]",
    "description" => "test description",
    "subject" => "test",
    "cc" => array:1 [
         0 => "[email protected]"
    ]
}

最佳答案

所以我的问题出在EmailEntity,其中cc是字符串。我已经使用Data Transformers来解决此问题。刚刚添加:

$builder->get('cc')
        ->addModelTransformer(new CallbackTransformer(
            function ($array) {
                return $array;
            },
            function ($array) {
                return json_encode($array);
            }
));

并且不要忘记添加use Symfony\Component\Form\CallbackTransformer;

关于php - 在属性路径“cc”处给出的类型为“字符串或空”,“数组”的CollectionType预期参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54667211/

10-13 07:41