* 描述问题
在父表详情页的关联子表区块中,打开编辑弹窗并将弹窗内的表单区块另存为区块模板时,模板被错误关联到父表数据表而非子表数据表。导致该模板在子表(同一数据表)的其他编辑入口中无法使用,提示"数据表不匹配"。
例如:在 transaction_parties(交易方)详情页的关联子表 purchase_records(采购记录)中,点击 [编辑] 打开编辑弹窗,将内部表单区块另存为区块模板。保存后模板显示"适用于 transaction_parties",而非预期的 purchase_records。
* 运行环境
| NocoBase 版本 | 2.1.24 |
|---|---|
| 数据库种类与版本 | PostgreSQL 16 |
| 操作系统 | Windows |
| 部署方式 | Docker |
| Docker 镜像版本 | nocobase/nocobase:latest-full |
| NodeJS 版本 | v24.18.0 |
如何重现
- 进入某张表(如
transaction_parties)的记录详情页 - 在页面上有一张关联子表区块(如
purchase_records) - 点击子表操作栏中的 [编辑] 按钮,打开编辑弹窗
- 点击弹窗内表单区块的选项→ 另存为模板(区块模板)
- 保存后,在另一个
purchase_records的编辑入口(如查看弹窗内的编辑按钮)中使用该模板时,提示:
数据表不匹配:当前为
purchase_records,模板适用于transaction_parties
预期行为
区块模板应绑定表单区块实际绑定的数据表(purchase_records),而非上级关联上下文的数据表(transaction_parties),以便在同一数据表的不同编辑入口中正常复用。


