下記のような、データをテーブルに保存する処理があります。(途中、かなり省略して単純化しています。)
この処理を実行する際、newEntityを通すと「created」「modified」が nullになり、SQLがエラーとなります。
「print_r($toSave);」で出力した「created」「modified」には正しく値が入っています。
ですが、「print_r($saveData);」で出力した「created」「modified」は nullになっています。
php
1 public function dataInsert($category) { 2 3 // テーブルのオブジェクトを取得 4 $tableObject = TableRegistry::get($category); 5 6 $today = date("Y-m-d H:i:s"); 7 8 $toSave = array( 9 'id' => null, 10 'data_id' => $account_data['id'], 11 'budget' => 123456, 12 'deleted' => 0, 13 'deleted_date' => null, 14 'created' => $today, 15 'modified' => $today 16 ); 17 18 if ( !empty ( $toSave ) ) { 19 $saveData = $tableObject->newEntity($toSave); 20 21print_r($toSave); 22print_r($saveData); 23 24 try { 25 $tableObject->saveOrFail($saveData); 26 } catch (\Cake\ORM\Exception\PersistenceFailedException $e) { 27 echo $e; 28 echo $e->getEntity(); 29 return '500'; 30 } 31 } 32
元々は、自分で作成した環境で開発をしていまして、問題なく動作をしていました。
ですが、ほかの方が作成した環境にプログラムをアップしたところ、「created」「modified」に値が入らなくなりました。
そのため、該当箇所のプログラムに不具合があるのではなく、CakePHP3の何かしらの設定の影響を受けているのだろうと思っていますが、どういうところを確認すればいいものなのでしょうか?
これだけの情報でもしかしたらあそこが、といったことが分かったりするものでしょうか?
お分かりになるようであれば、お教えいただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/30 06:30