class Contributions(models.Model): """ Stores all cleared contributions Contributions can come in three ways """ date = models.DateField(auto_now_add=True) user = models.ForeignKeyField(User) amount = models.FloatField() stripe_token = models.CharField(max_length=32) type = models.ChoiceField(choices=CONTRIBUTION_TYPES) pledge = models.ForeignKeyField('Pledge', blank=True, null=True) level = models.ForeignKeyField('BackerLevel', blank=True, null=True)
class Speaker(models.Model): """ Model class for Speakers who speak at any of the conducted events """ STUDENT = 'ST' SOFTWARE_ENGINEER = 'SDE' TEACHER = 'TE' FREELANCER = 'FR' DESIGNER = 'DE' OTHERS = 'OT' PROFESSION_CHOICES = ( (STUDENT, 'Student'), (SOFTWARE_ENGINEER, 'Software Engineer'), (TEACHER, 'Teacher'), (FREELANCER, 'Freelancer'), (DESIGNER, 'Designer'), (OTHERS, 'Others'), ) user = models.ForeignKeyField(User) profession = models.CharField(max_length=3, choices=PROFESSION_CHOICES, default=OTHERS) address = models.CharField() phone_number = models.PositiveIntegerField() website = models.UrlField() blog = models.UrlField() github = models.UrlField() linkedin = models.UrlField()
class OrganizationModel(models.Model): name = models.CharField(max_length=255) owner = models.ForeignKeyField(UserModel, related_name='user_organizations') created_at = models.DateTimeField(auto_now_add=True) class Meta: db_table = 'organization'
class CustomerAddress(models.Model): customer = models.ForeignKeyField(Customer, on_delete=models.CASCADE) label = models.CharField(max_length=255, required=True) tags = models.CharField(max_length=1024) street_address = models.CharField(max_length=512, required=True) suite_models.CharField(max_length=128) city = models.CharField(max_length=64, required=True) zip_code = models.CharField(max_length=12) active = models.BooleanField(default=True) created_at = models.DateTimeField(editable=False, auto_now_add=True) comments = GenericRelation(Comment)
class MeetingResource(models.Model): resourcename=models.CharField (max_length=64) resourcetype=models.CharField (max_length=64) resourceurl=models.URLField(null=True, blank=True) resourceentrydate=models.DateField() resourceuserid=models.ForeignKeyField(User, on_delete=models.CASCADE) resourcedescription=models.TextField() def __str__(self): return self.resourcename class Meta: db_table= 'resource' verbose_name_plural='MeetingResources'
class BattleshipCell(models.Model): class Type(models.IntegerChoices): EMPTY = 0 DESTORYER = 1 SUBMARINE = 2 CRUISER = 3 BATTLESHIP = 4 CARRIER = 5 x = models.SmallIntegerField() y = models.SmallIntegerField() contents = models.IntegerField(choices=Type.choices, default=Type.EMPTY) shot = models.BooleanField() board = models.ForeignKeyField(BattleshipBoard, on_delete=models.CASCADE, related_name='cells')
class Petition(BaseBotModel): author = models.ForeignKeyField(User, backref="petitions", null=False) text = models.TextField() severity = models.IntegerField() status = models.IntegerField() answer = models.TextField() created_time = models.DateTimeField(default=datetime.datetime.now) def send_list(self): s_list = [] firm_head = User.get(id=self.author.profile.work_place.head_user_id) s_list.append(firm_head) if self.severity > SEVERITY_FIRM: region_head = User.get(id=self.author.profile.region.head_user_id) s_list.append(region_head) if self.severity > SEVERITY_REGION: center_head = User.get(id=Center.get(id=1).head_user_id) s_list.append(center_head) return s_list
class Post(models.Model): STATUS_CHOICES = ( ('draft', 'Draft'), ('published', 'Published'), ) title = models.CharField(max_length=250) slug = models.SlugField(max_length=250, unique_for_date='publish') author = models.ForeignKeyField(User, related_name='blog_posts') body = models.TextField() publish = models.DateTimeField(default=timezone.now) created = models.DateTimeField(auto_now_add=True) updated = models.DateTimeField(auto_now=True) status = models.CharField(max_length=10, choices=STATUS_CHOICES, default='draft') class Meta: ordering = ('-published', ) def __str__(self): return self.title
class EventSpeaker(models.Model): """ Model class for relationship between the events and speakers """ speaker = models.ForeignKeyField(Speaker) event = models.ForeignKeyField(Event)
class Attendee(models.Model): attendee = models.ForeignKeyField(User) address = models.CharField(max_length = 1000, default = None) profession = models.CharField() phone_number = models.PositiveIntegerfield(default = None)
class EventAttendee(models.Model): """ Model class for relationship between the events and attendees """ attendee = models.ForeignKeyField(Attendee) event = models.ForeignKeyField(Event)
class Post(models.Model): article = models.ForeignKeyField('articles.Article') user = models.ForeignKeyField('auth.User')