我有一些代码在途中遇到了一些问题,我在调试它时遇到了麻烦.
这是它的简化版本.
$data = $this->request->data; $form = $this->Forms->get($data['id'],[ 'contain' => ['FieldsForms' => ['data'] ] ]); $form = $this->Forms->patchEntity($form,$data,['associated' => [ 'FieldsForms.Data',] ]); if ($this->Forms->save($form)) { // sunshine and rainbows } else { // wailing and gnashing of teeth }
我没有任何错误就哭了,咬牙切齿,据我所知,如果我调试$data它看起来没问题(虽然因为它很长并包含一堆UUID,所以我可能会遗漏一些东西).
验证错误是空的.
保存返回false – 任何关于如何调试它的建议都可以保存我留下的理智.
谢谢!
问题原来是数据,正如预期的那样,但由于保存返回错误且数据非常大,因此无法立即看到.
我首先制作了一个问题数据的子集,显示了相同的行为,然后根据ndm的建议,更改了保存函数的ORM / Table.php代码,如下所示,以便能够看到问题所在:
$x = $entity->errors(); if ($x) { debug($entity); debug($x); // if ($entity->errors()) { return false; }
这样我就可以看到发生了什么,然后继续修复数据.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。