CakePHP 3 - 保存功能不为数据库生成主键

CakePHP 3 - Save function not generating primary key for database

我有一个正在使用 Cake 3 的应用程序,由于我是 Cake 的新手,我已经烘焙了很多东西以了解这片土地。

当转到我的一个模型的烘焙添加视图、填写表单并提交时,条目已添加到数据库中,但条目上的主键为空。我一直在做一些研究,在 Cake 的 table class 中,我知道它应该在保存方法期间创建。但是,我没有覆盖保存或类似的东西,所以我有点困惑为什么它没有为主键生成 ID 字段。

我希望有人能够为我指明正确的方向,让我采取一些可能有助于我调试此问题的步骤。谢谢!

来自Cookbook 3.x

Rather than using an auto-increment key as the primary key, you may also use char(36). CakePHP will then use a unique 36 character UUID (Text::uuid) whenever you save a new record using the Table::save() method.

尝试将 id 中的 MySQL 字段从

转换为 table
VARCHAR(36)

CHAR(36)