Chciałbym, aby móc stworzyć UUID
na kliencie i wysłać go do Django Framework Rest (DRF) i użyć jej dla Primary Key
modelu.Tworzenie UUID na kliencie i zapisać klucz podstawowy z Django Framework i REST za pomocą POST
Jak dotąd, kiedy wysłać Primary Key
, który jest oznaczony id
w moim kodu źródłowego, DRF ignoruje id
i wykorzystuje domyślny argument Modelu wygenerować świeże UUID
.
Jednak, kiedy testować z modelu, używając normalnego Django ORM do utworzenia obiektu i wstępnie ustawić UUID
, model akceptuje UUID
jak to Primary Key
i nie spróbować odtworzyć nowy.
Czy to możliwe?
Moja stos jest
Django 1.8
Django Reszta Framework 3,1
Oto kod.
serializers.py:
class PersonCreateSerializer(serializers.ModelSerializer):
class Meta:
model = Person
fields = ('id', 'username', 'email', 'password')
models.py:
from django.contrib.auth.models import AbstractUser
class BaseModel(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
class Person(AbstractUser, BaseModel):
mam powiązany pytanie i skomentował github (dla odniesienia) https://github.com/tomchristie/django-rest-framework/issues/2432 –