[Frage] Validierung bei update funktioniert nicht

  • mmbln mmbln
    T3PO
    0 x
    15 Beiträge
    0 Hilfreiche Beiträge
    18. 01. 2016, 09:07

    Hallo,

    jetzt sitze ich hier schon einen Tag und seh den Fehler irgendwie nicht.

    Ich habe das Problem, dass beim erstellen eines Datensatzes über ein Formular die Model-Validierung funktioniert. Wenn ich aber diesen Datensatz bearbeite, wird nichts validiert.

    Hätte jemand einen Hinweis/Tipp, wo ich noch suchen könnte oder aber sogar eine Lösung des Problems?

    Hier mein ControllerApartment.php:

    1. /**
    2. * action list
    3. *
    4. * @return void
    5. */
    6. public function listAction() {
    7. $apartments = $this->apartmentRepository->findAll($this->authService->getLoggedInUserObject());
    8. $this->view->assign('apartments', $apartments);
    9. $this->view->assign('customerlist', $this->customerRepository->findAll());
    10. $apartment = null;
    11. $this->view->assign('formVisible', false);
    12. if ($this->request->hasArgument('apartment') && $this->request->getArgument('apartment') > 0) {
    13. $apartment = $this->apartmentRepository->findByUid($this->request->getArgument('apartment'));
    14. $this->view->assign('formVisible', true);
    15. }
    16. if ($this->request->hasArgument('formVisible') || $this->controllerContext->getRequest()->getOriginalRequestMappingResults()->hasErrors()) {
    17. $this->view->assign('formVisible', true);
    18. }
    19. $this->view->assign('apartment', $apartment);
    20. }
    21.  
    22. public function errorAction(){
    23. \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($this);
    24. die();
    25. }
    26.  
    27. /**
    28. * action update
    29. *
    30. * @param \Mmos\Fewoman\Domain\Model\Apartment $apartment
    31. * @return void
    32. */
    33. public function updateAction(\Mmos\Fewoman\Domain\Model\Apartment $apartment) {
    34. if ($apartment->_isNew()) {
    35. $this->apartmentRepository->add($apartment);
    36. $this->addFlashMessage('Datensatz wurde hinzugefügt', '', \TYPO3\CMS\Core\Messaging\AbstractMessage::OK);
    37. $currentUser = $this->authService->getLoggedInUserObject();
    38. $currentUser->addAccessApartment($apartment);
    39. $this->userRepository->update($currentUser);
    40. } else {
    41. $this->apartmentRepository->update($apartment);
    42. $this->addFlashMessage('Datensatz wurde aktualisiert', '', \TYPO3\CMS\Core\Messaging\AbstractMessage::OK);
    43. }
    44.  
    45. $this->redirect('list');
    46. }

    Hier das Model Apartment.php

    1. namespace Mmos\Fewoman\Domain\Model;
    2.  
    3. /**
    4.  * Apartment
    5.  */
    6. class Apartment extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity {
    7.  
    8. /**
    9. * title
    10. *
    11. * @var string
    12. * @validate NotEmpty
    13. * @validate StringLength(minimum = 3, maximum = 250)
    14. */
    15. protected $title = '';
    16.  
    17. /**
    18. * street
    19. *
    20. * @var string
    21. * @validate NotEmpty
    22. * @validate StringLength(minimum = 3, maximum = 250)
    23. */
    24. protected $street = '';
    25.  
    26. /**
    27. * zip
    28. *
    29. * @var string
    30. * @validate NotEmpty
    31. * @validate StringLength(minimum = 3, maximum = 5)
    32. */
    33. protected $zip = '';
    34.  
    35. /**
    36. * city
    37. *
    38. * @var string
    39. * @validate NotEmpty
    40. * @validate StringLength(minimum = 3, maximum = 250)
    41. */
    42. protected $city = '';
    43.  
    44. /**
    45. * customer
    46. *
    47. * @var \Mmos\Fewoman\Domain\Model\Customer
    48. * @validate NotEmpty
    49. */
    50. protected $customer = NULL;

    Warum wird beim erzeugen validiert, aber nicht beim aktualisieren?

    VG Micha


  • 1
  • AnnaM AnnaM
    R2-D2
    0 x
    98 Beiträge
    0 Hilfreiche Beiträge
    21. 04. 2016, 06:01

    Hallo Micha,

    ich habe genau dasselbe Problem. Hast du es inzwischen lösen können? Woran lag's?

    Schöne Grüße
    Anna

  • 1