Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from uuid import uuid4
- from django.contrib.contenttypes.fields import GenericForeignKey, ContentType
- from django.db import models
- class User(models.Model):
- """
- User model
- """
- id = models.UUIDField(primary_key=True, default=uuid4, editable=False)
- email = models.EmailField(max_length=255, unique=True)
- password = models.CharField(max_length=255, null=True, default=None)
- ACCOUNT_CHOICE_UNSET = 0
- ACCOUNT_CHOICE_BRAND = 1
- ACCOUNT_CHOICE_CREATOR = 2
- ACCOUNT_CHOICE_AGENCY = 3
- ACCOUNT_CHOICES = (
- (ACCOUNT_CHOICE_UNSET, 'Unset'),
- (ACCOUNT_CHOICE_BRAND, 'Brand'),
- (ACCOUNT_CHOICE_CREATOR, 'Creator'),
- (ACCOUNT_CHOICE_AGENCY, 'Agency'),
- )
- account_type = models.IntegerField(choices=ACCOUNT_CHOICES, default=ACCOUNT_CHOICE_UNSET)
- content_object = GenericForeignKey('content_type', 'email')
- content_type = models.ForeignKey(ContentType, limit_choices_to=ACCOUNT_CHOICES, related_name='user_content_type')
- class Meta:
- verbose_name_plural = "Users"
- def __str__(self):
- return "%s" % self.email
- class Brand(models.Model):
- """
- Brand model
- """
- id = models.UUIDField(primary_key=True, default=uuid4, editable=False)
- name = models.CharField(max_length=255, null=True, default=None)
- brand = models.CharField(max_length=255, null=True, default=None)
- email = models.EmailField(max_length=255, unique=True)
- phone = models.CharField(max_length=255, null=True, default=None)
- website = models.CharField(max_length=255, null=True, default=None)
- class Meta:
- verbose_name_plural = "Brands"
- def __str__(self):
- return "%s" % self.brand
- class Creator(models.Model):
- """
- Creator model
- """
- id = models.UUIDField(primary_key=True, default=uuid4, editable=False)
- first_name = models.CharField(max_length=255, null=True, default=None)
- last_name = models.CharField(max_length=255, null=True, default=None)
- email = models.EmailField(max_length=255, unique=True)
- youtube_channel_username = models.CharField(max_length=255, null=True, default=None)
- youtube_channel_url = models.CharField(max_length=255, null=True, default=None)
- youtube_channel_title = models.CharField(max_length=255, null=True, default=None)
- youtube_channel_description = models.CharField(max_length=255, null=True, default=None)
- photo = models.CharField(max_length=255, null=True, default=None)
- youtube_channel_start_date = models.CharField(max_length=255, null=True, default=None)
- keywords = models.CharField(max_length=255, null=True, default=None)
- no_of_subscribers = models.IntegerField(default=0)
- no_of_videos = models.IntegerField(default=0)
- no_of_views = models.IntegerField(default=0)
- no_of_likes = models.IntegerField(default=0)
- no_of_dislikes = models.IntegerField(default=0)
- location = models.CharField(max_length=255, null=True, default=None)
- avg_views = models.IntegerField(default=0)
- GENDER_CHOICE_UNSET = 0
- GENDER_CHOICE_MALE = 1
- GENDER_CHOICE_FEMALE = 2
- GENDER_CHOICES = (
- (GENDER_CHOICE_UNSET, 'Unset'),
- (GENDER_CHOICE_MALE, 'Male'),
- (GENDER_CHOICE_FEMALE, 'Female'),
- )
- gender = models.IntegerField(choices=GENDER_CHOICES, default=GENDER_CHOICE_UNSET)
- class Meta:
- verbose_name_plural = "Creators"
- def __str__(self):
- return "%s %s" % (self.first_name,self.last_name)
- class Agency(models.Model):
- """
- Agency model
- """
- id = models.UUIDField(primary_key=True, default=uuid4, editable=False)
- name = models.CharField(max_length=255, null=True, default=None)
- agency = models.CharField(max_length=255, null=True, default=None)
- email = models.EmailField(max_length=255, unique=True)
- phone = models.CharField(max_length=255, null=True, default=None)
- website = models.CharField(max_length=255, null=True, default=None)
- class Meta:
- verbose_name_plural = "Agencies"
- def __str__(self):
- return "%s" % self.agency
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement