工作流导出与IDE编辑适配小技巧
一、widgets_values 字段的重要性
我是一个懒人,现在编程ide都ai好久了编程能力也非常不错,所以就大胆尝试了直接修改json文件实现工作流的直接导入折腾了半天有了点点心得,有不对的地方大家见谅。
从可视化工作流导出JSON后,在IDE中编辑时最容易忽略的是 widgets_values 字段。这个字段决定了前端编辑器打开时是否显示代码内容。
问题现象:导出的JSON中 CodeControl 节点只有 properties.策略代码,没有 widgets_values,导致在PandaAI前端重新打开时编辑器为空白。
解决方案:
{
"type": "CodeControl",
"properties": {
"策略代码": "class MyFactor(Factor):\n def calculate(self, factors):\n ..."
},
"widgets_values": ["class MyFactor(Factor):\n def calculate(self, factors):\n ..."]
}
关键点:widgets_values 必须是数组格式,且内容应与 properties.策略代码 保持一致。在IDE中批量编辑JSON时,可以用查找替换确保所有 CodeControl 节点都包含此字段。
二、properties 键名必须是中文
工作流JSON中,CodeControl 节点的 properties 字段键名必须是中文 "策略代码",不能使用英文 "code"。
错误示例:
{
"properties": { "code": "..." } // ❌ 会导致 Factor class load failed
}
正确示例:
{
"properties": { "策略代码": "..." } // ✅ 正确
}
在IDE中使用正则表达式批量替换时,注意区分大小写和全角半角,确保键名完全匹配。