Skip to content

Commit 84d91aa

Browse files
committed
Removed the schemas folder and added all the classes to schemas.py
In code restructuring we will import the class from this python file.
1 parent 48ecc3a commit 84d91aa

File tree

10 files changed

+123
-107
lines changed

10 files changed

+123
-107
lines changed

Backend/schemas.py

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
class Degree(db.Model):
2+
__tablename__ = 'Degree'
3+
Degree_ID = db.Column(db.Integer, primary_key=True)
4+
year = db.Column(db.Integer, nullable=True)
5+
branch = db.Column(db.String(80), nullable=True)
6+
batch = db.Column(db.String(10), nullable=True)
7+
students = db.relationship('Student', backref='degree', lazy=True)
8+
9+
def __repr__(self) -> str:
10+
return f"{self.Degree_ID} - {self.year}"
11+
12+
13+
class Domains(db.Model):
14+
__tablename__ = 'Domains'
15+
Domain_ID = db.Column(db.Integer, primary_key=True)
16+
Domain_name = db.Column(db.String(64), nullable=False, unique=True)
17+
18+
def __repr__(self) -> str:
19+
return f"{self.Domain_ID} - {self.Domain_name}"
20+
21+
22+
class Languages(db.Model):
23+
__tablename__ = 'Languages'
24+
Language_ID = db.Column(db.Integer, primary_key=True)
25+
Name = db.Column(db.String(20), nullable=False)
26+
students = db.relationship(
27+
"Student_Language_M_N", back_populates="language")
28+
29+
def __repr__(self) -> str:
30+
return f"{self.Language_ID} - {self.Name}"
31+
32+
33+
class Messages(db.Model):
34+
__tablename__ = 'Messages'
35+
Message_ID = db.Column(db.Integer, primary_key=True)
36+
Sender_ID = db.Column(db.Integer, nullable=False, unique=False)
37+
Receiver_ID = db.Column(db.Integer, nullable=False, unique=False)
38+
text = db.Column(db.String(200), nullable=False, unique=False)
39+
timestamp = db.Column(db.DateTime, nullable=False,
40+
unique=False, default=datetime.utcnow)
41+
42+
def __repr__(self) -> str:
43+
return f"{self.Sender_ID} - {self.Receiver_ID}"
44+
45+
46+
class Projects(db.Model):
47+
__tablename__ = 'Projects'
48+
Project_ID = db.Column(db.Integer, primary_key=True)
49+
Title = db.Column(db.String(20), nullable=True)
50+
Description = db.Column(db.String(200), nullable=True)
51+
URL = db.Column(db.String(100), nullable=True)
52+
Student_ID = db.Column(db.Integer, db.ForeignKey('Student.Student_ID'),
53+
nullable=True)
54+
55+
def __repr__(self) -> str:
56+
return f"{self.Project_ID} - {self.Student_ID}"
57+
58+
59+
class Student(db.Model):
60+
__tablename__ = 'Student'
61+
Student_ID = db.Column(db.Integer, primary_key=True)
62+
Bio = db.Column(db.String(200), nullable=True)
63+
Email = db.Column(db.String(100), nullable=True)
64+
Headline = db.Column(db.String(100), nullable=True)
65+
Google_ID = db.Column(db.String(200), unique=True, nullable=True)
66+
Image_URL = db.Column(db.String(100), nullable=True)
67+
Name = db.Column(db.String(100), nullable=True)
68+
Requirements = db.Column(db.String(200), nullable=True)
69+
Bloom_filter = db.Column(db.LargeBinary, nullable=True)
70+
SocialURL_ID = db.Column(db.Integer, db.ForeignKey('Social_URLs.SocialURL_ID'),
71+
unique=True, nullable=True)
72+
Degree_ID = db.Column(db.Integer, db.ForeignKey('Degree.Degree_ID'),
73+
nullable=True)
74+
skills = db.relationship('Skills', secondary=Stud_Skill_M_N, lazy='subquery',
75+
backref=db.backref('see_students', lazy=True))
76+
77+
languages = db.relationship(
78+
"Student_Language_M_N", back_populates="student")
79+
projects = db.relationship('Projects', backref='student', lazy=True)
80+
81+
def __repr__(self) -> str:
82+
return f"{self.Student_ID} - {self.Name}"
83+
84+
85+
class Student_Language_M_N(db.Model):
86+
__tablename__ = 'Student_Language_M_N'
87+
Language_ID = db.Column(db.Integer, db.ForeignKey(
88+
'Languages.Language_ID'), primary_key=True)
89+
Student_ID = db.Column(db.Integer, db.ForeignKey(
90+
'Student.Student_ID'), primary_key=True)
91+
Proficiency = db.Column(db.String(20), nullable=True, unique=False)
92+
language = db.relationship("Languages", back_populates="students")
93+
student = db.relationship("Student", back_populates="languages")
94+
95+
def __repr__(self) -> str:
96+
return f"{self.Language_ID} - {self.Student_ID}"
97+
98+
99+
class Social_URLs(db.Model):
100+
__tablename__ = 'Social_URLs'
101+
SocialURL_ID = db.Column(db.Integer, primary_key=True)
102+
codechef = db.Column(db.String(100), unique=True, nullable=True)
103+
hackerrank = db.Column(db.String(100), unique=True, nullable=True)
104+
leetcode = db.Column(db.String(100), unique=True, nullable=True)
105+
linkedin = db.Column(db.String(100), unique=True, nullable=True)
106+
github = db.Column(db.String(100), unique=True, nullable=True)
107+
twitter = db.Column(db.String(100), unique=True, nullable=True)
108+
student = db.relationship(
109+
'Student', backref='social_urls', lazy=True, uselist=False)
110+
111+
def __repr__(self) -> str:
112+
return f"{self.Social_URL_ID}"
113+
114+
115+
class Skills(db.Model):
116+
__tablename__ = 'Skills'
117+
Skill_ID = db.Column(db.Integer, primary_key=True)
118+
Skill_name = db.Column(db.String(64), nullable=False, unique=True)
119+
domains_in_skill = db.relationship('Domains', secondary=Skill_Domain_M_N, lazy='subquery',
120+
backref=db.backref('see_skills', lazy=True))
121+
122+
def __repr__(self) -> str:
123+
return f"{self.Skill_ID} - {self.Skill_name}"

Backend/schemas/Degree.py

Lines changed: 0 additions & 10 deletions
This file was deleted.

Backend/schemas/Domains.py

Lines changed: 0 additions & 7 deletions
This file was deleted.

Backend/schemas/Languages.py

Lines changed: 0 additions & 9 deletions
This file was deleted.

Backend/schemas/Messages.py

Lines changed: 0 additions & 11 deletions
This file was deleted.

Backend/schemas/Projects.py

Lines changed: 0 additions & 11 deletions
This file was deleted.

Backend/schemas/Skills.py

Lines changed: 0 additions & 9 deletions
This file was deleted.

Backend/schemas/Social_URLs.py

Lines changed: 0 additions & 14 deletions
This file was deleted.

Backend/schemas/Student.py

Lines changed: 0 additions & 24 deletions
This file was deleted.

Backend/schemas/Student_Language_M_N.py

Lines changed: 0 additions & 12 deletions
This file was deleted.

0 commit comments

Comments
 (0)