Move Subscription data into separate table in DB. Merge migrations

This commit is contained in:
Debanjum Singh Solanky
2023-11-08 17:45:25 -08:00
parent 3bb10128ef
commit 8178004e6d
7 changed files with 95 additions and 75 deletions

View File

@@ -14,16 +14,7 @@ class BaseModel(models.Model):
class KhojUser(AbstractUser):
class SubscriptionType(models.TextChoices):
TRIAL = "trial"
STANDARD = "standard"
uuid = models.UUIDField(models.UUIDField(default=uuid.uuid4, editable=False))
subscription_type = models.CharField(
max_length=20, choices=SubscriptionType.choices, default=SubscriptionType.TRIAL
)
is_subscribed = models.BooleanField(default=False)
subscription_renewal_date = models.DateTimeField(null=True, default=None)
def save(self, *args, **kwargs):
if not self.uuid:
@@ -55,6 +46,17 @@ class KhojApiUser(models.Model):
accessed_at = models.DateTimeField(null=True, default=None)
class Subscription(BaseModel):
class Type(models.TextChoices):
TRIAL = "trial"
STANDARD = "standard"
user = models.OneToOneField(KhojUser, on_delete=models.CASCADE)
type = models.CharField(max_length=20, choices=Type.choices, default=Type.TRIAL)
is_recurring = models.BooleanField(default=False)
renewal_date = models.DateTimeField(null=True, default=None)
class NotionConfig(BaseModel):
token = models.CharField(max_length=200)
user = models.ForeignKey(KhojUser, on_delete=models.CASCADE)