[Frage] Model Validation not working

  • ironpfu ironpfu
    R2-D2
    0 x
    99 Beiträge
    1 Hilfreiche Beiträge
    06. 09. 2015, 18:42

    Hallo,

    ich habe seit längerer Zeit ein Problem mit der Validierung eines Model in Fluid/Extbase, welches aus meiner Sicht nicht nachvollziehbar ist.

    Ich habe ein komplexes Model mit einigen ObjectStorages und FAL Upload (auf Basis von HelmutHummel).
    Nun stehe ich vor dem Problem, dass mein Model nicht validiert wird, sobald ich es in der Fluid Form wie folgt definiere:

    1. <f:form action="update" name="submission" object="{submission}" enctype="multipart/form-data" >

    Es wird einfach an die update Action weitergegeben
    Sobald ich es aber wie folgt definiere (Beachte UPPER "Submission"),
    1. <f:form action="update" name="submission" object="{Submission}" enctype="multipart/form-data" >

    erhalte ich die komplette Modelvalidierung, nur meine ViewHelper insbesonder jener des Fileuploads liefern nun eine Fehlermeldung:
    1. No value found for key "TYPO3\CMS\Fluid\ViewHelpers\FormViewHelper->formObject"

    Die zweite Fehlermeldung ist mir soweit klar. Wenn der Objectpfad zum Formelement nicht passt, kann es auch nicht gefüllt werden. Aber warum funktioniert die Validierung nicht?

    Bitte um kurze Hilfe/Input


  • 1
  • aemka aemka
    Jedi-Ratsmitglied
    0 x
    562 Beiträge
    9 Hilfreiche Beiträge
    07. 09. 2015, 19:30

    Wie sehen denn die Controller Actions dazu aus?

    http://www.aemka.de/

  • ironpfu ironpfu
    R2-D2
    0 x
    99 Beiträge
    1 Hilfreiche Beiträge
    19. 10. 2015, 08:29

    Hi,

    der Controller sieh wie folgt aus:

    1. /**
    2. * action update
    3. *
    4. * @param \PCON\Congress\Domain\Model\Submission $submission
    5. * @return void
    6. */
    7. public function updateAction(\PCON\Congress\Domain\Model\Submission $submission) {
    8.  
    9. $this->submissionRepository->update($submission);
    10. $persistenceManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Persistence\Generic\PersistenceManager');
    11. $persistenceManager->persistAll();
    12. $this->redirect('edit', Null, Null, array('submission'=>$submission->getUid() ) );
    13. }

  • harald1972 harald197...
    Sternenflotten-Admiral
    0 x
    198 Beiträge
    13 Hilfreiche Beiträge
    20. 10. 2015, 10:30

    Ahoi,

    mit diesem redirect erhält die editAction eine uid anstelle eines Submission-Objekts.
    Sicher, daß das so gewollt ist?
    Normalerweise erhält die editAction das gleiche Objekt wie die updateAction.
    Ob das mit deinem eingangs erwähnten Problem zu tun hat, kann ich grad nicht sagen.

    Gruß, Harald.

  • 1