Почему Extbase выдает исключение, если поле даты начала пусто. Если дата имеет неправильный формат, проверка работает. Но пустое значение показывает это:
Неперехваченное исключение TYPO3 ... Events :: setEnd () должно быть экземпляром DateTime, задано значение null ...
Что не так со следующим кодом в моей модели?
/**
* start
*
* @var \DateTime
* @validate NotEmpty
* @validate(type="DateTime", options={"locale"="de_DE"})
*/
protected $start;
А вот и мой ТСА
'start' => [
'exclude' => false,
'label' => 'Start',
'config' => [
'type' => 'input',
'renderType' => 'inputDateTime',
'size' => 10,
'eval' => 'datetime',
'default' => time()
],
],
Кеш очищен, папка typo3temp удалена.
ОБНОВЛЕНИЕ:
Возможно, ошибка в моем initializeUpdateAction (), где я должен установить формат даты?
public function initializeUpdateAction() {
$user = $this->request->getArgument('feUsers');
$events = $user['events'];
if( is_array($events) ) {
foreach ($events as $i => $event) {
$this->arguments->getArgument('feUsers')
->getPropertyMappingConfiguration()->forProperty('events.'.$i.'.start')
->setTypeConverterOption(
'TYPO3\\CMS\\Extbase\\Property\\TypeConverter\\DateTimeConverter',
\TYPO3\CMS\Extbase\Property\TypeConverter\DateTimeConverter::CONFIGURATION_DATE_FORMAT,
'd.m.Y'
);
}
}
}