Ошибка: вызов функции-члена format () для необъекта с \ DateTime

У меня есть одна проблема с моим проектом Symfony. У меня есть один объект со многими \ DateTime, как это:

/**
* @var \DateTime
*
* @ORM\Column(name="date_debut", type="datetime", length=255)
*/
protected $dteDebut ;

function getDteDebut() {return $this->dteDebut;}

function setDteDebut(\DateTime $dteDebut) {$this->dteDebut = $dteDebut;}

Я использую formBuilder с datetime следующим образом:

$builder->add('dteDebut', 'datetime', array(
'label' => 'Date de début :',
'date_widget' => 'single_text',
'time_widget' =>'single_text'
));

И одна простая функция использовать мою форму:

public function organiserAction () {

    $em=$this->getDoctrine()->getManager();
$orga = new \CCF\CCFBundle\Entity\Organiser;
$form = $this->createForm(new \CCF\CCFBundle\Form\OrganiserForm(), $orga);
$request = $this->get('request');

if ($request->getMethod() == 'POST') {
$form->bind($request);
var_dump($form->get('dteDebut')->getData());
if ($form->isValid()) {
$em->persist($orga);
$em->flush();
return $this->redirect($this->generateUrl('organiser_homepage'));
}
}
//on passe la méthode createView() à la vue pour qu'elle l'affiche
return $this->render('CCFBundle:Organiser:create.html.twig',array("form"=>$form->createView(),));
}

Когда я подтверждаю форму, у меня есть одна ошибка

Ошибка: вызов функции-члена format () для необъекта

Трассировки стека

в вендоре / doctrine / dbal / lib / Doctrine / DBAL / Types / DateType.php в строке 53 —

public function convertToDatabaseValue($value, AbstractPlatform $platform)
{
return ($value !== null)
? $value->format($platform->getDateFormatString()) : null;
}
/**

Я не понимаю, где эта ошибка, вы можете мне помочь?

0

Решение

Попробуйте с этим:

/**
* @var \DateTime
*
* @ORM\Column(name="date_debut", type="datetime", length=255)
*/
protected $dteDebut ;

function getDteDebut() {return $this->dteDebut;}

function setDteDebut(new \DateTime $dteDebut) {$this->dteDebut = $dteDebut;}
0

Другие решения

Я также использую datetime в одном из моих объектов. Я вижу одно изменение: я не указываю в установщике, что переменная является объектом даты и времени

setDteDebut($dteDebut) {...}
0

Хорошо, мой плохой … Я сделал ошибку в одном другом атрибуте … У меня есть один атрибут с типом даты, и этот атрибут имеет строку типа в форме …

0
По вопросам рекламы [email protected]