SQLServer错误:expected a simple type, a tuple or a list

dict_data = {
        'request_id': request_id,
        'original_id': request_body.original_id,
        'unit_type': request_body.unit_type,
        'unit_number': request_body.unit_number,
        'requester': request_body.requester,
        'request_time': request_time,
        'token_project': user,
        'reject_reason': None,
        'reject_flag': 0,
        'original_data': json.dumps(original_data),
        # 'original_data': original_data,  # 存api库错误测试
    }

db_obj = BookModel(**dict_data)

# 这里的original_data是一个字典,内部套了列表,不进行序列化会报错
"""
original_data = {'e
mail_name': 'test_email', 'email_data': {'unit_type': 'case_number', 'unit_number': 110,
'original_id': None, 'receive_list': ['ccc'], 'name_list': ['aa'], 'gatherer': 'api',
'requester': 'test', 'request_time': None, 'time_flag': True, 'reset_flag': True, ' rule': {'wo_num': True, 'case_num': True}}}
"""

主要报错的原因:dict_data字典内部嵌套了字典original_data,而original_data字典内部有列表,SQLServer不支持存列表数据,所以必须用json.dumps()将original_data的数据进行序列化,这样,存储数据库时才不会报错

posted @ 2023-02-01 16:04  _yessir  阅读(167)  评论(0编辑  收藏  举报