promotions/apps/gooyal_oauth2/models.py
Sayyid Hamid Mahdavi 3d836e8d79 init
2025-07-22 16:05:03 +03:30

45 lines
1.4 KiB
Python

# models
import uuid
from django.db import models
from oauth2_provider.models import AbstractApplication, AbstractAccessToken, AbstractGrant, AbstractRefreshToken, \
AbstractIDToken
class AccessToken(AbstractAccessToken):
id=None
uuid = models.UUIDField(primary_key=True, editable=False, default=uuid.uuid4, unique=True, db_index=True)
detail = models.JSONField(null=True, blank=True)
client_id = models.CharField(max_length=255, null=True, blank=True)
client_owner = models.ForeignKey('users.User', on_delete=models.PROTECT, null=True, blank=True)
class Meta:
abstract = False
class Application(AbstractApplication):
id=None
uuid = models.UUIDField(primary_key=True, editable=False, default=uuid.uuid4, unique=True, db_index=True)
class Meta:
abstract = False
class Grant(AbstractGrant):
id = None
uuid = models.UUIDField(primary_key=True, editable=False, default=uuid.uuid4, unique=True, db_index=True)
class Meta:
abstract = False
class RefreshToken(AbstractRefreshToken):
id = None
uuid = models.UUIDField(primary_key=True, editable=False, default=uuid.uuid4, unique=True, db_index=True)
class Meta:
abstract = False
class IDToken(AbstractIDToken):
id = None
uuid = models.UUIDField(primary_key=True, editable=False, default=uuid.uuid4, unique=True, db_index=True)
class Meta:
abstract = False