Hallo,
ich habe in Typo3 7.6 mit dem Extension Builder eine eigene Extension erstellt mit mehreren verschachtelten Objekten. Diese möchte ich jetzt in einem einzigen Edit-Formular bearbeiten. Alle Objekte sind entsprechend miteinander verknüpft. Die Struktur sieht folgendermaßen aus: ligagruppe----1:n(ligagruppespieltag)---->spieltag----1:n(spieltageinzelerge bnisse)---->einzelergebnisse Mein Fluid-Template sieht so aus (auf die relevanten Punkte gekürzt): <f:form action="update" name="ligagruppe" object="{ligagruppe}" > <f:for each="{ligagruppe.ligagruppespieltag}" as="spieltage"> <label>Spielort</label> <f:form.textfield name="ligagruppe[ligagruppespieltag][{spieltage.uid}][spielort]" value="{spieltage.spielort}" /> <f:form.hidden name="ligagruppe[ligagruppespieltag][{spieltage.uid}][__identity]" value="{spieltage.uid}" /><br /> <f:for each="{spieltage.spieltageinzelergebnisse}" as="res"> <label>Spiel 1</label> <f:form.textfield name="spieltage[spieltageinzelergebnisse][{res.uid}][spiel1]" value="{res.spiel1}" /> <f:form.hidden name="spieltage[spieltageinzelergebnisse][{res.uid}][__identity]" value="{res.uid}" /><br /> </f:for> </f:for> <f:form.submit value="Save" /> </f:form> Wenn ich das Formular aufrufe, werden die vorhandenen Werte korrekt gesetzt. Das Ändern funktioniert für alles auf der obersten Ebene (ligagruppe) und auf der zweiten Ebene (spieltag), aber auf der dritten Ebene (einzelergebnisse) werden die Werte nicht aktualisiert. Ich habe schon verschiedene Kombinationen für <f:form.textfield name="spieltage[spieltageinzelergebnisse][{res.uid}][spiel1]" und <f:form.hidden name="spieltage[spieltageinzelergebnisse][{res.uid}][__identity]" value="{res.uid}" /><br /> ausprobiert, aber es funktioniert nicht. Die edit- und update-Actions sehen so aus: /** * action edit * * @param \BCDU\Leagueresults\Domain\Model\Ligagruppe $ligagruppe * @ignorevalidation $ligagruppe * @return void */ public function editAction(\BCDU\Leagueresults\Domain\Model\Ligagruppe $ligagruppe = NULL) { $ligagruppe = $this->ligagruppeRepository->findOneByPid($this->configurationManager->getCo ntentObject()->data['pages']); $this->view->assign('ligagruppe', $ligagruppe); } /** * action update * * @param \BCDU\Leagueresults\Domain\Model\Ligagruppe $ligagruppe * @return void */ public function updateAction(\BCDU\Leagueresults\Domain\Model\Ligagruppe $ligagruppe) { $this->addFlashMessage('Die Änderungen wurden gespeichert', 'Herzlichen Glückwunsch!', \TYPO3\CMS\Core\Messaging\AbstractMessage::OK); $this->ligagruppeRepository->update($ligagruppe); $this->redirect('edit'); } Wie muss das korrekte name-Attribut hier lauten, damit die Werte aktualisiert werden? Oder übersehe ich hier etwas und muss im Controller noch etwas ergänzen? Habe schon überall gesucht und kann leider nichts dazu finden. Danke für jeden Tipp Stefan _______________________________________________ TYPO3-german mailing list TYPO3-german@lists.typo3.org http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german