fix: handle param value is blank

This commit is contained in:
CaptainB 2025-03-20 14:19:40 +08:00
parent 47849fc1a5
commit 27561410e5

View File

@ -6,6 +6,7 @@
@date2024/8/2 17:35
@desc:
"""
import io
import json
import pickle
import re
@ -289,7 +290,7 @@ class FunctionLibSerializer(serializers.Serializer):
if function_lib.init_params:
old_init_params = json.loads(rsa_long_decrypt(function_lib.init_params))
for key in edit_dict['init_params']:
if edit_dict['init_params'][key] == encryption(old_init_params[key]):
if key in old_init_params and edit_dict['init_params'][key] == encryption(old_init_params[key]):
edit_dict['init_params'][key] = old_init_params[key]
edit_dict['init_params'] = rsa_long_encrypt(json.dumps(edit_dict['init_params']))
@ -309,7 +310,7 @@ class FunctionLibSerializer(serializers.Serializer):
password_fields = [i["field"] for i in function_lib.init_field_list if i.get("input_type") == "PasswordInput"]
if function_lib.init_params:
for k in function_lib.init_params:
if k in password_fields:
if k in password_fields and function_lib.init_params[k]:
function_lib.init_params[k] = encryption(function_lib.init_params[k])
return {**FunctionLibModelSerializer(function_lib).data, 'init_params': function_lib.init_params}