咨询电话:
15628812133
06
2024/12

分享几个django项目中封装的方法

发布时间:2024-12-06 15:37:32
发布者:神棍子
浏览量:
0

django项目中经常会用到各种格式的转化比如model转dict,json转dic、转数组等,这里举例几个在项目中使用过得方法供参考。

1. is_json(myjson)`该方法用于判断传入的字符串是否为有效的 JSON 格式。如果输入的字符串能够被成功解析为 JSON,则返回 True否则返回 False。

is_json方法

 

首先检查输入的字符串是否全为数字,如果是则直接返回 False,因为纯数字不是有效的 JSON。使用 json.loads()`尝试解析字符串,如果解析成功则返回 True;如果解析失败则捕获异常并返回 False。

# 测试有效 JSON 字符串

valid_json = '{"name": "Alice", "age": 25}'

print(is_json(valid_json))  # 输出: True

# 测试无效 JSON 字符串

invalid_json = 'not a json'

print(is_json(invalid_json))  # 输出: False

# 测试纯数字字符串

digit_string = '12345'

print(is_json(digit_string))  # 输出: False

2. object_to_list(obj)该方法用于将对象转换为字典,排除对象中的 `_state` 属性。

主要用于将数据库模型对象转换为字典,以便于序列化或进一步处理。 

 object_to_list方法

使用字典推导式遍历对象的 `__dict__` 属性,排除 `_state` 属性。返回过滤后的字典。

class User:

    def __init__(self, id, name, age):

        self.id = id

        self.name = name

# 创建一个 User 对象

user = User(1, "Alice", 25)

# 将 User 对象转换为字典

user_dict = object_to_list(user)

print(user_dict)  # 输出: {'id': 1, 'name': 'Alice', 'age': 25}

以上方法分别用于不同的场景:

  is_json(myjson) 用于验证字符串是否为有效的 JSON 格式。

  object_to_list(obj)用于将对象转换为字典,排除特定属性,适用于数据库模型对象的序列化。

 

希望这些方法的解析和用法示例能帮助你在实际开发中更好地理解和使用它们。

关键词:
返回列表