Niestandardowy identyfikator ID w modelu Django


Tworzę aplikację internetową w Django. Chcę użyć niestandardowego pola identyfikatora w moim modelu i znam moduł uuid. Problem w tym, że nie wiem, gdzie umieścić tę logikę. Nie chcę używać Django AutoField. Chcę, aby było tak, że jeśli zostanie wprowadzony pojedynczy wiersz, to pole identyfikatora powinno być niestandardowe, a nie AutoField. Przychodzi mi do głowy głupi pomysł, aby później zmienić pole identyfikatora po wstawieniu wiersza z moim niestandardowym identyfikatorem. Czy ktoś może mi pomóc rozwiązać ten problem? Każda pomoc byłaby bardzo mile widziana.
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

https://docs.djangoproject.com ... ields
https://docs.djangoproject.com ... ldsJeśli chcesz określić niestandardowy klucz podstawowy, po prostu go określ
Primary_key = true dla jednego z twoich pól. Jeśli Django już cię widzi
jawnie ustaw Field.primary_key, nie doda to kolumny auto id .

Więc chcesz (od

https://docs.djangoproject.com/bath/model dev/ref// fields/# uuidfield
https://docs.djangoproject.com ... field
)
import uuid
from django.db import modelsclass MyUUIDModel(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
# other fields

Myślę, że nie musisz dzwonić do pola
ID
.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się