Когда я пытаюсь сохранить NULL для поля DateTime, оно всегда выглядит как 0000-00-00 00:00:00. Я правильно настроил схему и базу данных, чтобы иметь возможность хранить значения NULL. (разрешено сохранять «NULL» и даже устанавливать значение по умолчанию для этих полей даты и времени в NULL).
Я пытался:
1.) Подход "pre -inding" (=> в файле actions.class)
$values = $request->getParameter($form->getName());
$values['datetime_field'] = null;
$form->bind($values, $request->getFiles($form->getName()));
2.) Подход "предварительное сохранение" (=> в классе ctions.c)
if ($form->isValid())
{
$form->getObject()->setDateTimeField(null);
$form->save();
3.) Подход "override updateObject ()" (=> в классе форм)
public function updateObject($values = null)
{
$object = parent::updateObject($values);
$object->setDateTimeField(null);
return $object;
}
Должно быть, что-то, о чем я даже не думал ... почему всегда хранится 0000-00-00 00:00:00 вместо NULL? На самом деле «ничего» не нужно хранить, чтобы СУБД могла сама обрабатывать «NULL-вставку» ...
Любая помощь / подсказка высоко ценится! :)