Я хочу создать родительский объект в форме представления жидкости с несколькими дочерними объектами в StorageObject (соотношение 1: n). FormData будет передан в базу данных, а в случае ошибки вернет его возвращающий модуль NEW Property Mapper. Но только в поле формы родительского объекта появляется класс «f3-form-error». Но ничего не происходит на непоследовательных дочерних объектах.Создание и проверка родительских/дочерних объектов с Typo3 Extbase Fluid
(Работа в TYPO3 6.2.5)
Как вы можете видеть в коротком примере ниже, Propertymapping для ChildObjects Авторы не получает данное UID. Вместо этого Mapper предоставляет пользовательский идентификатор. Я думаю, что это причина, по которой ValidationResult не возвращается в поле ввода.
Пожалуйста, помогите!
Краткое Пример:
// Контроллер
public function initializeCreateAction() {
$this->arguments->getArgument('newSubmission')->getPropertyMappingConfiguration()->allowProperties('authors');
$this->arguments->getArgument('newSubmission')->getPropertyMappingConfiguration()->allowCreationForSubProperty('authors.*');
$this->arguments->getArgument('newSubmission')->getPropertyMappingConfiguration()->forProperty('authors.*')->allowProperties('firstname');
}
// Жидкость
<f:form.textfield property="type" /><br />
<f:for each="{authors}" as="author" key="uid" iteration="iterator">
<f:form.textfield property="authors.{uid}.firstname" placeholder="Enter your first given name" />
</f:for>
// отладки
$result = $this->getControllerContext()->getRequest()->getOriginalRequestMappingResults();
// Выходные данные
array(19 items)
newSubmission.type => array(1 item)
0 => TYPO3\CMS\Extbase\Validation\Errorprototypeobject
message => 'The given subject was NULL.' (27 chars)
code => 1221560910 (integer)
arguments => array(empty)
title => '' (0 chars)
newSubmission.authors.000000006200d7b200007f3972b36107.email => array(1 item)
0 => TYPO3\CMS\Extbase\Validation\Errorprototypeobject
message => 'The given subject was not a valid email address.' (48 chars)
code => 1221559976 (integer)
arguments => array(empty)
title => '' (0 chars)
newSubmission.authors.000000006200d7b400007f3972b36107.email => array(1 item)
0 => TYPO3\CMS\Extbase\Validation\Errorprototypeobject
message => 'The given subject was not a valid email address.' (48 chars)
code => 1221559976 (integer)
arguments => array(empty)
title => '' (0 chars)
newSubmission.authors.000000006200d7b700007f3972b36107.email => array(1 item)
0 => TYPO3\CMS\Extbase\Validation\Errorprototypeobject
message => 'The given subject was not a valid email address.' (48 chars)
code => 1221559976 (integer)
arguments => array(empty)
title => '' (0 chars)