[Frage] Neues Datenbankobjekt wird nicht gespeichert TYPO3-Version: 4.5.27

  • eisstern eisstern
    R2-D2
    0 x
    112 Beiträge
    0 Hilfreiche Beiträge
    16. 07. 2014, 16:32

    Hallo,

    ich habe ein Gutschein Model mit dazugehörigem Repository. Lesen und Updates funktionieren.
    Ich erzeuge im Controller ein neues Objekt des Gutscheinmodells und setze alle Werte manuell, nicht über ein Formular oder Dependency Injection.
    Nachdem ich über die ->add() -Funktion das Objekt hinzugefügt habe, persistiere ich die Änderungen. Allerdings geschieht hier nichts. Das Objekt wird nicht real in die Datenbank geschrieben. Allerdings erhalte ich auch keine Fehlermeldung. Weder im PHP Log, noch Typo3 Logs. Da ich zum ersten Mal per Code in die DB schreiben muss, habe ich nun wirklich keine Ahnung mehr woran das liegen könnte.
    PS: Das ist leider noch Typo3 4.5 mit Extbase 1.3. (Ich weiß um den verbleibenden Supportzeitraum).

    Hie die Codeauszüge:

    Model (ohne getter/setter):

    1. class Tx_XY_Domain_Model_Gutschein extends Tx_Extbase_DomainObject_AbstractEntity {
    2.  
    3. /**
    4. * code
    5. *
    6. * @var string
    7. * @validate NotEmpty
    8. */
    9. protected $code;
    10.  
    11. /**
    12. * wert
    13. *
    14. * @var float
    15. * @validate NotEmpty
    16. */
    17. protected $wert;
    18.  
    19. /**
    20. * verbrannt
    21. *
    22. * @var boolean
    23. */
    24. protected $verbrannt = FALSE;
    25.  
    26. /**
    27. * typ
    28. *
    29. * @var int
    30. */
    31. protected $typ = 1;
    32.  
    33. //...
    34. }

    Hier der Code im Controller:

    1. public function pageAction(){
    2.  
    3. // ...
    4.  
    5. // save to db
    6. // add a dummy gutschein for testing purpose
    7. $newGutschein = new Tx_XY_Domain_Model_Gutschein();
    8. $newGutschein->setCode('ABC123');
    9. $newGutschein->setTyp(1);
    10. $newGutschein->setWert(10);
    11. $newGutschein->setVerbrannt(0);
    12.  
    13. $this->gutscheinRepository->add($newGutschein);
    14.  
    15. $persistenceManager = $this->objectManager->get('Tx_Extbase_Persistence_Manager');
    16. $persistenceManager->persistAll();
    17.  
    18. // ...
    19. }


  • 1
  • eisstern eisstern
    R2-D2
    0 x
    112 Beiträge
    0 Hilfreiche Beiträge
    23. 07. 2014, 10:04

    Auch wenn ich ungern meine eigenen Posts anstupse, so habe ich leider immer noch das Problem.
    Ich bin seither leider kein bisschen weitergekommen.
    Jemand eine Idee?

  • 1