refactor: Improve parameter handling in function execution

This commit is contained in:
CaptainB 2025-03-18 13:56:14 +08:00 committed by 刘瑞斌
parent 3709d34343
commit aab6a2cdf3
2 changed files with 9 additions and 3 deletions

View File

@ -111,7 +111,10 @@ class BaseFunctionLibNodeNode(IFunctionLibNode):
self.context['params'] = params self.context['params'] = params
# 合并初始化参数 # 合并初始化参数
if function_lib.init_params is not None:
all_params = json.loads(rsa_long_decrypt(function_lib.init_params)) | params all_params = json.loads(rsa_long_decrypt(function_lib.init_params)) | params
else:
all_params = params
result = function_executor.exec_code(function_lib.code, all_params) result = function_executor.exec_code(function_lib.code, all_params)
return NodeResult({'result': result}, {}, _write_context=write_context) return NodeResult({'result': result}, {}, _write_context=write_context)

View File

@ -222,8 +222,11 @@ class FunctionLibSerializer(serializers.Serializer):
**field} for field in **field} for field in
input_field_list]} input_field_list]}
# 合并初始化参数 # 合并初始化参数
params = init_params | params if init_params is not None:
return function_executor.exec_code(code, params) all_params = init_params | params
else:
all_params = params
return function_executor.exec_code(code, all_params)
@staticmethod @staticmethod
def get_field_value(debug_field_list, name, is_required): def get_field_value(debug_field_list, name, is_required):