2023-09-06 13:24:49 +00:00
|
|
|
import uuid
|
|
|
|
|
|
|
|
|
|
from functools import partial
|
|
|
|
|
from django.db import models
|
|
|
|
|
from django.conf import settings
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_pk_format():
|
2023-09-06 15:54:16 +00:00
|
|
|
if settings.PRIMARY_KEY_FIELD == "django.db.models.UUIDField":
|
2023-09-06 13:24:49 +00:00
|
|
|
PrimaryField = partial(
|
|
|
|
|
models.UUIDField, primary_key=True, editable=False, default=uuid.uuid4
|
|
|
|
|
)
|
2023-09-06 15:54:16 +00:00
|
|
|
elif settings.PRIMARY_KEY_FIELD == "django.db.models.CharField":
|
2023-09-06 14:40:13 +00:00
|
|
|
PrimaryField = partial(
|
|
|
|
|
models.CharField, primary_key=True, editable=False, max_length=40
|
|
|
|
|
)
|
|
|
|
|
else:
|
|
|
|
|
PrimaryField = partial(models.BigAutoField, primary_key=True, editable=False)
|
2023-09-06 13:24:49 +00:00
|
|
|
return PrimaryField()
|