我想为我的模型生成UUID,正式地说,我所做的与官方文档所展示的完全一样。
import uuid
from django.db import models
class MyUUIDModel(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
但是,我也发现django_extension
为我做了类似的工作。我不知道它们之间的区别是什么,但我确实想要统一我的代码以达到更好的生产目的。任何帮助,谢谢。
答案 0 :(得分:1)
Django在版本1.8之前没有包含UUIDField
,这就是为什么它被Django Extensions维护者创建为“扩展”的原因。现在,Django本身包含UUIDField
Django Extensions维护者正在使用它们的版本,但是继续为使用Django<的人们保持UUIDField
。 1.8直到不再支持Django 1.7 per the docs。
如果您使用的是Django> = 1.8,则应使用django.db.models.UUIDField
。