我是 Symfony 的新手,在渲染一个填充了数据库数据的树枝表单时遇到了一些麻烦。实体由 Doctrine 正确获取和映射。
它总是在DateTimeToStringTransformer::reverseTransform($value)中抛出TransformationFailedException ,其中 $value 应该是一个字符串 - 但它已经是一个 DateTime ...
我的实体的日期字段定义如下:
/**
* @var \DateTime
* @ORM\Column(type="datetime", nullable=false)
* @Validator\DateTime(message = "validator.invalidType.date")
* @Validator\NotBlank(message = "validator.createDate.notBlank")
*/
private $createDate;
在表单类中它说:
$builder->add('createDate', null, array('read_only' => true));
我一直在使用 xdebug 进行调试,看起来该字段已经“正确”解析为 DateTime 实例。所以我不明白,为什么 Symfony 试图再次将字符串转换为 DateTime 对象。