symfony 3.4类型错误:参数1传递给。。。必须是DateTime的实例,给定null,
在实体中,日期时间被标记为:symfony 3.4类型错误:参数1传递给。。。必须是DateTime的实例,给定null,,symfony,symfony-3.4,Symfony,Symfony 3.4,在实体中,日期时间被标记为: /** * @var \DateTime * @ORM\Column(name="task_date_start", type="datetime", nullable=true) */ private $taskDateStart; 在形式上 $builder->add('taskDateStart', DateType::class, [ "widget" => "single_text", "html5" => f
/**
* @var \DateTime
* @ORM\Column(name="task_date_start", type="datetime", nullable=true)
*/
private $taskDateStart;
在形式上
$builder->add('taskDateStart', DateType::class, [
"widget" => "single_text",
"html5" => false,
"format" => "dd-MM-yyyy" ,
"attr" => ["class" => "js-datepicker"],
"required" => false
]);
在字段中插入null时,我发现了此错误
参数1传递给。。。必须是DateTime的实例,给定null
通过修改setter(没有原型的新setter)解决了该问题: 变成
function setTaskDateStart( $taskDateStart ) {
$this->taskDateStart = $taskDateStart;
}
通过修改setter(没有原型的新setter)解决了该问题: 变成
function setTaskDateStart( $taskDateStart ) {
$this->taskDateStart = $taskDateStart;
}
更好的解决方案是允许设置null并让验证报告错误
/**
* @var \DateTime
* @ORM\Column(name="task_date_start", type="datetime", nullable=false)
* @Assert\NotBlank()
*/
private $taskDateStart;
及
更好的解决方案是允许设置null并让验证报告错误
/**
* @var \DateTime
* @ORM\Column(name="task_date_start", type="datetime", nullable=false)
* @Assert\NotBlank()
*/
private $taskDateStart;
及
什么是你的实体?你能编辑你的帖子并添加实体设置器吗?注意,你应该在编辑器中使用
{}
符号来正确格式化你的代码(我在这篇文章中做的;)。很可能你有方法setTaskDateStart(\DateTime$taskDateStart)
不允许将null
传递给它。什么是…
,您的实体?您可以编辑您的帖子并添加实体设置器吗?注意,你应该在编辑器中使用{}
符号来正确格式化你的代码(我是为这篇文章做的;)。很可能你有方法setTaskDateStart(\DateTime$taskDateStart)
不允许将null
传递给它。