2016-08-08 68 views
1

Ich möchte UUID für meine Modelle erstellen, und offiziell, was ich getan habe, ist genau das, was das offizielle Dokument zeigt.Was ist der Unterschied zwischen django_extension.db und django.db?

import uuid 
from django.db import models 

class MyUUIDModel(models.Model): 
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) 

Allerdings finde ich auch django_extension für mich similiar Arbeit zu tun. Ich weiß nicht, worin der Unterschied besteht, aber ich möchte meinen Code für bessere Produktionszwecke vereinheitlichen. Jede Hilfe, danke.

Antwort

1

Django enthielt keine UUIDField bis Version 1.8, weshalb es als "Erweiterung" von den Django Extensions Maintainern erstellt wurde. Nun, da Django UUIDField enthält, werden die Django Extensions Maintainer ihre Version verwerfen, aber sie behalten weiterhin ihre UUIDField für Leute, die Django < 1.8 verwenden, bis Django 1.7 nicht mehr unterstützt wird per the docs.

Wenn Sie Django> = 1.8 verwenden, sollten Sie django.db.models.UUIDField verwenden.