开发环境root,可以引用ctx.action.params.values中某个外键比 a.f.字段,但是切换成admin之后,a.f直接为外键的值,根本引用不了相关字段了,出现一堆的ACL。。。。。。
贴下代码 ,说明下admin角色用户对数据表权限的设置
2026-02-14 16:03:37 [debug] ctx permission extra={“can”:{“role”:“admin”,“resource”:“t_order_item”,“action”:“update”},“resourceName”:“t_order_item”,“actionName”:“update”} meta={“can”:{“role”:“admin”,“resource”:“t_order_item”,“action”:“update”},“resourceName”:“t_order_item”,“actionName”:“update”} module=t_order_item submodule=update app=main reqId=cacfd5b6-20da-4ab5-8934-99f8171d1cc5 dataSourceKey=main
2026-02-14 16:03:37 [debug] acl params module=t_order_item submodule=update app=main reqId=cacfd5b6-20da-4ab5-8934-99f8171d1cc5 dataSourceKey=main
2026-02-14 16:03:37 [debug] acl parsedParams module=t_order_item submodule=update app=main reqId=cacfd5b6-20da-4ab5-8934-99f8171d1cc5 dataSourceKey=main
2026-02-14 16:03:37 [debug] Not allow to update association, only keep keys extra
admin和root的数据权限没有区别
因为这个问题涉及改动太多,涉及到配置有表间关系的都有问题,项目因此停止不前了,当时看了源码,ACL模块里,看没有太懂,但debug的日志的输出的内容找到,但是没有想到解决办法
check-change-with-association.js:284
明细表一行数据关联了主表id,修改明细表时,Root时ctx的values有引用的各种值,每个引用都是一个对象,切换成Admin时对象变Id了,后台显示的log里有无修改连接权限提示,我查了源码,好像检查UpdateAssociationValues如果没有包含关联表的字段,直接会触发此条日志,但是我都是拖拽界面submit里无法增加UpdateAssoicationValues
顺便问一下’Changing the STORED status’ is not supported for generated columns.是什么原因导致的
表单的关系字段设置子表单 子表格,提交后监控浏览器network请求, 有参数updateAssociationValues

