jaf_azzam

Models

Apr 14th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. import uuid
  2. from django.db import models
  3. from django.contrib.auth import User
  4. import datetime
  5.  
  6.  
  7. groups_choices = (
  8. ("STAFF", "STAFF"),
  9. ("STUDENT", "STUDENT")
  10. )
  11.  
  12.  
  13. class Students(models.User):
  14.  
  15. username = models.CharField(max_length = 50)
  16. email = models.CharField(max_length = 254)
  17. password = models.CharField(max_length = 50)
  18. groups = models.CharField(
  19. max_length = 10,
  20. choices = groups_choices,
  21. )
  22. is_staff = False
  23. date_joined = models.DateField(auto_now = True, auto_now_add = False)
  24.  
  25.  
  26.  
  27. class Teacher(models.Model):
  28. dept = models.CharField(max_length = 50)
  29. t_first_name = models.CharField(max_length = 30)
  30. t_last_name = models.CharField(max_length = 30)
  31. teacher_id = models.IntegerField(primary_key = True, unique = True)
  32.  
  33.  
  34.  
  35. class Subject(models.Model):
  36. sname = models.CharField(max_length = 30)
  37. subject_id = models.AutoField(primary_key = True)
  38. teacher_id = models.ForeignKey(Teacher)
  39. teacher = models.ManyToManyField(Teacher) # Defining the 'teaches' relation here.
  40.  
  41.  
  42.  
  43. class student(models.Model):
  44. first_name = models.CharField(max_length = 30)
  45. last_name = models.CharField(max_length = 30)
  46. course = models.CharField(max_length = 40)
  47. semester = models.IntegerField()
  48. student_id = models.IntegerField()
  49. uuid = models.UUIDField(primary_key = True, default = uuid.uuid4, ediatble = False)
  50. subject_id = models.ForeignKey(Subject)
  51. subject = models.ManyToManyField(Subject) # Defining the 'studied' relation here.
  52.  
  53.  
  54.  
  55. class Attendance(models.Model):
  56. attendence_id = models.AutoField(primary_key = True)
  57. status = models.CharField(max_length = 2)
  58. date = models.DateField(auto_now = True, auto_now_add = False)
  59. student_id = models.ForeignKey(student, on_delete = models.CASCADE)
  60. subject_id = models.ForeignKey(Subject, on_delete = models.CASCADE)
  61. #student = models.OneToOneField(student) # Defining 'belongs' relationship since one studetn has only one attendance
  62. subject = models.ManyToManyField(Subject)
Add Comment
Please, Sign In to add comment