我的问题是我想为实体的一个字段设置一个值,而这个值来自一个表单。
表单绑定到另一个实体,表单的此字段名为fmedida
。
这是我尝试过的
$hijo-> setFinicio(new \DateTime($form->getData()->getfmedida()));
但是当然语法不正确,因为我有这个错误消息:
“DateTime::__construct() 期望参数 1 是字符串,给定对象”
我建议你 var_dump 你从中获得的价值,$form->getData()->getfmedida()
看看发生了什么。
当我尝试 getData() 时,它返回我这边的数组,所以也试试:
$data = $form->getData();
$fmedida = $data['fmedida'];
$hijo-> setFinicio(new \DateTime($fmedida));
此外,DateTime 从字符串创建 DateTime 对象。显然,您从中获取的值 $form->getData()->getfmedida()
不是字符串,而是对象。如果$form->getData()->getfmedida()
给你一个 DateTime 对象,我看不出使用 DateTime 的意义,所以只是
$hijo-> setFinicio($form->getData()->getfmedida());
应该足够了。