新建的树状表插入报错了,但是不知道原因

* 描述问题

我尝试插入数据报错了

* 运行环境

  • NocoBase 版本:v1.9.0-alpha.7
  • 数据库种类与版本: PostgreSQL 15
  • 操作系统:PostgreSQL 12
    -浏览器及版本 :谷歌浏览器
  • 部署方式:Docker
  • Docker 镜像版本:nocobase/nocobase:latest
  • NodeJS 版本:

如何重现

新建一个这样表:

预期行为

我想要新增数据但是报错了

截图

日志

{“level”:“info”,“message”:“request GET /api/jsq_dict:list?pageSize=200&filter=%7B%7D”,“method”:“GET”,“path”:“/api/jsq_dict:list?pageSize=200&filter=%7B%7D”,“req”:{“header”:{“x-role”:“admin”,“x-hostname”:“startup.tdcktz.com”,“x-timezone”:“+08:00”,“x-locale”:“zh-CN”,“x-authenticator”:“basic”}},“app”:“main”,“reqId”:“82eba147-a4a6-4e39-aae8-a5d28f7008ad”,“timestamp”:“2025-08-17 22:53:39”}
{“level”:“info”,“message”:“response /api/jsq_dict:list?pageSize=200&filter=%7B%7D”,“method”:“GET”,“path”:“/api/jsq_dict:list?pageSize=200&filter=%7B%7D”,“res”:{“status”:200},“action”:{“actionName”:“list”,“resourceName”:“jsq_dict”,“params”:{“pageSize”:“200”,“filter”:{},“resourceName”:“jsq_dict”,“actionName”:“list”,“values”:{}}},“userId”:26,“status”:200,“cost”:139,“app”:“main”,“reqId”:“82eba147-a4a6-4e39-aae8-a5d28f7008ad”,“bodySize”:1108,“timestamp”:“2025-08-17 22:53:39”}
{“level”:“info”,“message”:“request POST /api/jsq_industry_policy:create”,“method”:“POST”,“path”:“/api/jsq_industry_policy:create”,“req”:{“header”:{“x-role”:“admin”,“x-hostname”:“startup.tdcktz.com”,“x-timezone”:“+08:00”,“x-locale”:“zh-CN”,“x-authenticator”:“basic”}},“app”:“main”,“reqId”:“05e10735-56fd-40ff-89df-7c56db16585a”,“timestamp”:“2025-08-17 22:53:43”}
Error
at Query.run (/app/nocobase/node_modules/sequelize/lib/dialects/postgres/query.js:50:25)
at /app/nocobase/node_modules/sequelize/lib/sequelize.js:315:28
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async PostgresQueryInterface.insert (/app/nocobase/node_modules/sequelize/lib/dialects/abstract/query-interface.js:308:21)
at async model.save (/app/nocobase/node_modules/sequelize/lib/model.js:2490:35)
at async main_jsq_industry_policy_path.create (/app/nocobase/node_modules/sequelize/lib/model.js:1362:12)
at async _Repository.create (/app/nocobase/node_modules/@nocobase/database/lib/repository.js:450:22)
at async _AsyncEmitter. (/app/nocobase/node_modules/@nocobase/plugin-collection-tree/dist/server/plugin.js:79:13)
at async _AsyncEmitter.emitAsync (/app/nocobase/node_modules/@nocobase/utils/lib/mixin/AsyncEmitter.js:66:7)
at async jsq_industry_policy. (/app/nocobase/node_modules/@nocobase/database/lib/model-hook.js:88:9)
at async jsq_industry_policy.runHooks (/app/nocobase/node_modules/sequelize/lib/hooks.js:96:7)
at async model.save (/app/nocobase/node_modules/sequelize/lib/model.js:2547:7)
at async jsq_industry_policy.create (/app/nocobase/node_modules/sequelize/lib/model.js:1362:12)
at async AdjacencyListRepository.create (/app/nocobase/node_modules/@nocobase/database/lib/repository.js:450:22)
at async descriptor.value (/app/nocobase/node_modules/@nocobase/database/lib/decorators/transaction-decorator.js:84:29)
at async create (/app/nocobase/node_modules/@nocobase/actions/lib/actions/create.js:37:20)
at async triggerWorkflowActionMiddleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-action-trigger/dist/server/ActionTrigger.js:61:7)
at async dataTemplate (/app/nocobase/node_modules/@nocobase/server/lib/middlewares/data-template.js:36:3)
at async app.acl.use.after (/app/nocobase/node_modules/@nocobase/plugin-acl/dist/server/server.js:543:9)
at async middlewares.add.tag (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:452:9)
at async /app/nocobase/node_modules/@nocobase/acl/lib/allow-manager.js:108:7
at async ACLMiddleware (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:325:14) {
name: ‘SequelizeDatabaseError’,
parent: error: invalid input syntax for type integer: “[object Object]”
at Parser.parseErrorMessage (/app/nocobase/node_modules/pg-protocol/dist/parser.js:285:98)
at Parser.handlePacket (/app/nocobase/node_modules/pg-protocol/dist/parser.js:122:29)
at Parser.parse (/app/nocobase/node_modules/pg-protocol/dist/parser.js:35:38)
at Socket. (/app/nocobase/node_modules/pg-protocol/dist/index.js:11:42)
at Socket.emit (node:events:524:28)
at Socket.emit (node:domain:489:12)
at addChunk (node:internal/streams/readable:561:12)
at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)
at Readable.push (node:internal/streams/readable:392:5)
at TCP.onStreamRead (node:internal/stream_base_commons:191:23) {
length: 153,
severity: ‘ERROR’,
code: ‘22P02’,
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: “unnamed portal parameter $1 = ‘…’”,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: ‘numutils.c’,
line: ‘232’,
routine: ‘pg_strtoint32’,
sql: ‘INSERT INTO “public”.“main_jsq_industry_policy_path” (“nodePk”,“path”,“rootPk”) VALUES ($1,$2,$3) RETURNING “nodePk”,“path”,“rootPk”;’,
parameters: [ ‘[object Object]’, ‘/[object Object]’, NaN ]
},
original: error: invalid input syntax for type integer: “[object Object]”
at Parser.parseErrorMessage (/app/nocobase/node_modules/pg-protocol/dist/parser.js:285:98)
at Parser.handlePacket (/app/nocobase/node_modules/pg-protocol/dist/parser.js:122:29)
at Parser.parse (/app/nocobase/node_modules/pg-protocol/dist/parser.js:35:38)
at Socket. (/app/nocobase/node_modules/pg-protocol/dist/index.js:11:42)
at Socket.emit (node:events:524:28)
at Socket.emit (node:domain:489:12)
at addChunk (node:internal/streams/readable:561:12)
at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)
at Readable.push (node:internal/streams/readable:392:5)
at TCP.onStreamRead (node:internal/stream_base_commons:191:23) {
length: 153,
severity: ‘ERROR’,
code: ‘22P02’,
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: “unnamed portal parameter $1 = ‘…’”,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: ‘numutils.c’,
line: ‘232’,
routine: ‘pg_strtoint32’,
sql: ‘INSERT INTO “public”.“main_jsq_industry_policy_path” (“nodePk”,“path”,“rootPk”) VALUES ($1,$2,$3) RETURNING “nodePk”,“path”,“rootPk”;’,
parameters: [ ‘[object Object]’, ‘/[object Object]’, NaN ]
},
sql: ‘INSERT INTO “public”.“main_jsq_industry_policy_path” (“nodePk”,“path”,“rootPk”) VALUES ($1,$2,$3) RETURNING “nodePk”,“path”,“rootPk”;’,
parameters: [ ‘[object Object]’, ‘/[object Object]’, NaN ]
}
{“level”:“error”,“message”:“invalid input syntax for type integer: "[object Object]"”,“meta”:{“err”:“Error\n at Query.run (/app/nocobase/node_modules/sequelize/lib/dialects/postgres/query.js:50:25)\n at /app/nocobase/node_modules/sequelize/lib/sequelize.js:315:28\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async PostgresQueryInterface.insert (/app/nocobase/node_modules/sequelize/lib/dialects/abstract/query-interface.js:308:21)\n at async model.save (/app/nocobase/node_modules/sequelize/lib/model.js:2490:35)\n at async main_jsq_industry_policy_path.create (/app/nocobase/node_modules/sequelize/lib/model.js:1362:12)\n at async _Repository.create (/app/nocobase/node_modules/@nocobase/database/lib/repository.js:450:22)\n at async _AsyncEmitter. (/app/nocobase/node_modules/@nocobase/plugin-collection-tree/dist/server/plugin.js:79:13)\n at async _AsyncEmitter.emitAsync (/app/nocobase/node_modules/@nocobase/utils/lib/mixin/AsyncEmitter.js:66:7)\n at async jsq_industry_policy. (/app/nocobase/node_modules/@nocobase/database/lib/model-hook.js:88:9)\n at async jsq_industry_policy.runHooks (/app/nocobase/node_modules/sequelize/lib/hooks.js:96:7)\n at async model.save (/app/nocobase/node_modules/sequelize/lib/model.js:2547:7)\n at async jsq_industry_policy.create (/app/nocobase/node_modules/sequelize/lib/model.js:1362:12)\n at async AdjacencyListRepository.create (/app/nocobase/node_modules/@nocobase/database/lib/repository.js:450:22)\n at async descriptor.value (/app/nocobase/node_modules/@nocobase/database/lib/decorators/transaction-decorator.js:84:29)\n at async create (/app/nocobase/node_modules/@nocobase/actions/lib/actions/create.js:37:20)\n at async triggerWorkflowActionMiddleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-action-trigger/dist/server/ActionTrigger.js:61:7)\n at async dataTemplate (/app/nocobase/node_modules/@nocobase/server/lib/middlewares/data-template.js:36:3)\n at async app.acl.use.after (/app/nocobase/node_modules/@nocobase/plugin-acl/dist/server/server.js:543:9)\n at async middlewares.add.tag (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:452:9)\n at async /app/nocobase/node_modules/@nocobase/acl/lib/allow-manager.js:108:7\n at async ACLMiddleware (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:325:14)”},“module”:“jsq_industry_policy”,“submodule”:“create”,“method”:“error-handler”,“app”:“main”,“reqId”:“05e10735-56fd-40ff-89df-7c56db16585a”,“dataSourceKey”:“main”,“timestamp”:“2025-08-17 22:53:43”}
{“level”:“error”,“message”:“response /api/jsq_industry_policy:create”,“method”:“POST”,“path”:“/api/jsq_industry_policy:create”,“res”:[{“message”:“invalid input syntax for type integer: "[object Object]"”}],“action”:{“actionName”:“create”,“resourceName”:“jsq_industry_policy”,“params”:{“resourceName”:“jsq_industry_policy”,“actionName”:“create”,“values”:{“status”:“1”,“name”:“新建”,“weight”:0.7,“f_dict_policy”:{“createdAt”:“2025-08-17T07:08:25.545Z”,“updatedAt”:“2025-08-17T07:11:27.669Z”,“dict_type”:“policy”,“id”:2,“name”:“支持类”,“parentId”:null,“remarks”:null,“createdById”:26,“updatedById”:26},“remark”:“萨达\n”}}},“userId”:26,“status”:500,“cost”:106,“app”:“main”,“reqId”:“05e10735-56fd-40ff-89df-7c56db16585a”,“bodySize”:85,“timestamp”:“2025-08-17 22:53:43”}

请检查数据库中字段类型与nocobase数据源中的类型是否匹配

都是使用nocobase中的新建字段,nocobase中新增,我没有人为的修改数据表

没有能复现问题,请在 Demo 环境复现
https://a_90hin06jg4n.v7.demo-cn.nocobase.com/

非常感谢,我重新尝试了一下,发现也无法复现,我后续复现成功会详细记录

遇到同样报错。

  • 父子结构2张表测试过4次,3次会报错。关系设置没有不同,字段测过整数、浮点等常用类型
  • 父表为普通数据表,子表为树结构表
  • 填写子表表单时会报楼主同样的错误提示

版本:Nocobase 1.4.21 Postgresql 17.2

能提供一个测试环境吗,或者 demo 环境复现一下

我也遇到同样的问题,是在1.8.14版本。

在1.8.18版本重建了两张表。因报错的表已被删除,可能未做到复刻,未报错。