Ich möchte in der Lage sein, ein UUID
auf dem Client zu erstellen und an Django Erholung Rahmen (DRF) und verwende, die für die schicken Primary Key
des Modells.erstellen UUID auf dem Client und Primärschlüssel mit Django REST-Framework speichern und mit einem POST
Bisher wenn ich die Primary Key
senden, die id
in meinem Quellcode markiert ist, ignoriert DRF die id
und verwendet das Standardargument des Modells einen frischen UUID
zu erzeugen.
Allerdings, wenn ich aus dem Modell zu testen, die normale Django ORM mit dem Objekt zu erstellen, und voreingestellter die UUID
akzeptiert das Modell der UUID
wie es Primary Key
ist und versucht nicht, und eine neue zu erstellen.
Ist das möglich?
Mein Stack ist
Django 1.8
Django Rastrahmen 3,1
Hier ist der Code ist.
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):
Ich habe eine ähnliche Frage und kommentierte auf github (als Referenz) https://github.com/tomchristie/django-rest-framework/issues/2432 –