我知道这似乎是一种非常常见的错误类型,但在查看后,我找不到修复我的问题。 所以我有一个拥有多个DateTime字段的实体。他们在我的MySQL数据库中声明为DATETIME
。 这里是我的实体的利益Symfony在字符串上调用成员函数格式()
/**
* @Doctrine\Column(name="dateOuvertureDossier", type="datetime", nullable=false)
* @Assert\NotBlank(message="Le date est obligatoire.")
*/
private $dateOuvertureDossier;
/**
* @Doctrine\Column(name="premiereDateEvaluation", type="datetime", nullable=false)
* @Assert\NotBlank(message="Le date est obligatoire.")
*/
private $premiereDateEvaluation;
/**
* @Doctrine\Column(name="deuxiemeDateEvaluation", type="datetime", nullable=true)
*/
private $deuxiemeDateEvaluation;
/**
* @Doctrine\Column(name="troisiemeDateEvaluation", type="datetime", nullable=true)
*/
private $troisiemeDateEvaluation;
/**
* @Doctrine\Column(name="quatriemeDateEvaluation", type="datetime", nullable=true)
*/
private $quatriemeDateEvaluation;
只是一部分,这里是我的表格只有感兴趣的部分
$builder ->add('dateOuvertureDossier', DateTimeType::class, array(
'required' => true,
'input' => 'datetime'
))
->add('premiereDateEvaluation', DateTimeType::class, array(
'required' => true,
'input' => 'datetime'
))
->add('deuxiemeDateEvaluation', DateTimeType::class, array(
'required' => false,
'input' => 'datetime'
))
->add('troisiemeDateEvaluation', DateTimeType::class, array(
'required' => false,
'input' => 'datetime'
))
->add('quatriemeDateEvaluation', DateTimeType::class, array(
'required' => false,
'input' => 'datetime'))
这里是一个什么样我想在我的控制器做榜样
if($form->isSubmitted())
{
$miseAjourInfoSuiviDossier = $form->getData();
if($miseAjourInfoSuiviDossier->getUtilisateur() != null &&
$miseAjourInfoSuiviDossier->getCompagnieAssurance() != null &&
$miseAjourInfoSuiviDossier->getVilleClient() != null &&
$miseAjourInfoSuiviDossier->getNumeroDossierAssurance() != null &&
$miseAjourInfoSuiviDossier->getNomClient() != null &&
$miseAjourInfoSuiviDossier->getDateOuvertureDossier() != null &&
$miseAjourInfoSuiviDossier->getPremiereDateEvaluation() != null &&
$miseAjourInfoSuiviDossier->getGaa() != null &&
$miseAjourInfoSuiviDossier->getEtat() != null
)
{
错误:调用成员函数格式()字符串
似乎Symfony是comfused,并认为我希望日期存储为一个字符串,但我不明白为什么。 任何帮助,将不胜感激,在此先感谢!
你可以检查getDateOuvertureDossier方法是否返回字符串或DateTime吗? –
当设置setDateOuvertureDossier时,应该填充一个dateTime对象,而不是字符串..注意 – Albeis
@AlvinBunk,是的,我已经尝试在getter中返回一个新的DateTime对象,比如'new DateTime($ this-> DateOuverture)'I得到以下错误:DateTime :: __ construct()期望参数1是字符串,给定的对象,这导致我相信是的,该吸气剂返回一个DateTime对象 –