为什么我将此表单选项设置为多个时出错.这将直接来自Symfonys网站.我改变的只是变量名.
$builder->add('genre', 'choice', array(
'choices' => array(
'x' => 'x',
'y' => 'y',
'z' => 'z',
),
'multiple' => true,
));
Run Code Online (Sandbox Code Playgroud)
这是错误:
无法转换属性路径"genre"的值:预期数组.
这是我的变量的实体类:
/**
* @var string
*
* @ORM\Column(name="genre", type="text", nullable=true)
*/
private $genre;
Run Code Online (Sandbox Code Playgroud)
我可以确认 qooplmao 的评论解决了这个问题:
问题是您的实体字段$genre不是被定义为 anarray而是被定义为 a string。
但是,当启用多个选择时,表单字段将提供array结果,而不是字符串。
所以你可以:
genre为 anarray而不是 astringmultiple或通过设置为 false禁用多项选择我这个具体问题我猜你想映射genre为array.
| 归档时间: |
|
| 查看次数: |
6835 次 |
| 最近记录: |