📜  django 模型 UUID 字段 - Python (1)

📅  最后修改于: 2023-12-03 15:00:27.242000             🧑  作者: Mango

Django 模型 UUID 字段

在 Django 中使用 UUID 字段可以方便地在数据库中存储唯一标识符,而不是使用自增的 ID 字段。UUID 是一种保证全球唯一性的标识符,可以方便地用于不同数据库中的数据关联。

定义 UUID 字段

在 Django 中使用 UUID 字段需要导入 uuid 模块和 models 模块,并定义字段:

import uuid
from django.db import models

class MyModel(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    # 其他字段

其中,primary_key=True 表示这个字段作为主键,default=uuid.uuid4 表示这个字段默认值为随机 UUID,editable=False 表示这个字段不可编辑。

查询 UUID 字段

在查询 UUID 字段时,可以使用 uuid.UUID() 将字符串转换成 UUID 类型进行查询。例如:

from uuid import UUID
from myapp.models import MyModel

uuid_str = '6a599f50-a0b6-4195-9201-6e1ad87b19c4'
uuid_type = UUID(uuid_str)

# 根据 id 查询
MyModel.objects.get(id=uuid_type)

# 根据其它字段查询
MyModel.objects.filter(name='John', job='Developer')
结语

使用 UUID 字段可以大大提高数据的关联性和全球唯一性。在 Django 中,定义 UUID 字段和查询 UUID 字段都可以方便地操作。