Hi,
ich hab ein ziemliches Problem mit dem erstellen von Datenbankeinträgen. Genauer gesagt werden Datenbankeinträge eines bestimmten Domain Models zwar angelegt, jedoch fehlen jegliche Daten.
Hier die Funktion, welche den Datensatz speichert (Klasse: Tx_MyExt_Controller_ObjectController):
<?php
/**
*
* @param string $code
* @param Tx_MyExt_Domain_Model_Object $object
*
* @return void
*/
public function storeObjectCode($code='', $object=NULL) {
if(!empty($code) && $object) {
$persistenceManager = t3lib_div::makeInstance('Tx_Extbase_Persistence_Manager');
$newCode = t3lib_div::makeInstance('Tx_MyExt_Domain_Model_Object');
$newCode->setCode($code);
$newCode->setObjectId($object->getUid());
$newCode->setUserId($this->accessControlService->getFrontendUserUid());
$this->objectCodeRepository->add($newCode);
$persistenceManager->persistAll();
t3lib_div::debug($this->objectCodeRepository->getAddedObjects(), '$this->objectCodeRepository->getAddedObjects()');
}
}
?>
Die Debug-Anweisung in der letzten Zeile gibt folgendes aus:
<?php
$this->objectRepository->getAddedObjects()
|Object:
Tx_Extbase_Persistence_ObjectStorage Object
(
[storage:protected] => Array
(
[a43b13d7d70921c4b2d63015384e3f30] => Tx_MyExt_Domain_Model_ObjectCode Object
(
[code:protected] => 071128.20.38.1115.171710
[objectId:protected] => 38
[pid:protected] =>
[userId:protected] => 1115
[quantityPrinting:protected] => 1
[_cleanProperties:private] => Array
(
=> 071128.20.38.1115.171710
[objectId] => 38
[pid] =>
[userId] => 1115
[quantityPrinting] => 1
[uid] => 9239
)
[uid:protected] => 9239
[isClone:private] =>
)
)
[isInitialized:protected] => 1
)
?>
In der Datenbank wird der Datensatz wie folgt gespeichert (Ausgabe aus Windows cmd)
mysql> select * from tx_myext_domain_model_objectcode;
+-----+------+------+-----------+---------+-------------------+------------+------------+---------+--------+
| uid | pid | code | object_id | user_id | quantity_printing | tstamp | crdate | deleted | hidden |
+-----+------+------+-----------+---------+-------------------+------------+------------+---------+--------+
| 60 | 2123 | | 0 | 0 | 0 | 1311866227 | 1311866227 | 0 | 0 |
+-----+------+------+-----------+---------+-------------------+------------+------------+---------+--------+
Alle nötigen Informationen sind vorhanden, jedoch werden sie nicht in die Datenbank gespeichert. Die Felder code, object_id, user_id und quantity_printing sind leer obwohl ich sie befüllt habe?!
Ich seh den Fehler nicht 🙁. Weiß da jemand Rat?
Danke.