J'essaie d'enregistrer des données dans la table des commandes. Mais la méthode save renvoie NULL. J'ai donné les données aussi.Enregistrer() renvoyant NULL, ne pas enregistrer les données
Voici le code que j'essaie de faire.
$OrderData = [
'order_name' => 56,
'order_status_id' => '2',
'order_date' => date('Y-m-d H:i:s'),
'order_address' => '',
'order_suburb' => '',
'order_state' => '',
'order_postcode' => '',
'order_country' => '',
'client_id' => 55
];
$this->loadModel('Orders');
$orderData = $this->Orders->newEntity($OrderData, ['validate' => false]);
debug($this->Orders->save($orderData));die;
var_dump($this->Orders->save($orderData));die;
Le débogage renvoie la valeur false. var_dump renvoie bool (false). Je ne peux même pas vérifier la requête SQL générée par le gâteau ORM, car la méthode save n'est pas un objet. J'essaye de faire ceci à partir du Logins Controller. $ orderData est une entité avec des données, elle n'est pas nulle.
Avec 'pr()' vous ne pouvez pas faire la différence entre 'null',' false' et ' '''. Utilisez 'debug()' pour le résultat ainsi que l'entité après avoir appelé 'save()'. – ndm
debug(), me renvoie false. Qu'est-ce que je devrais faire maintenant? BTW pouvez-vous me dire s'il vous plaît la quelle est la cause en regardant les codes? @ndm –
Comme suggéré, déboguez l'entité après avoir appelé 'save()'. Si aucune erreur n'est détectée, inspectez les requêtes SQL générées. – ndm