我想在Postgres中为主键提供一个UUID。我有Postgres端工作,我的主键上的默认值设置为generate_uuid_v4()
。如果我通过psql
手动发送SQL,它就有效。但是,Sequelize在创建新行时发送值为NULL的id。有没有办法阻止Sequelize这样做?
如果与sequelize-typescript
有任何关系,我也会使用Sequelize。
这是正在发送的查询:
INSERT INTO "User" ("id","firstName","lastName","middleInitial") VALUES (NULL,'Davis','Kimoto','S') RETURNING *;
需要消除设置为NULL的id值。有没有办法告诉Sequelize永远不要设置或修改id值?
答案 0 :(得分:1)
尝试添加到您的模型defaultValue
:
defaultValue: sequelize.literal('uuid_generate_v4()')