-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathmodels.py
More file actions
111 lines (88 loc) · 3.64 KB
/
models.py
File metadata and controls
111 lines (88 loc) · 3.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# from app import db
from rdb import db
from datetime import date, datetime
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
uname = db.Column(db.String(30))
upass = db.Column(db.String(30))
email = db.Column(db.String(30))
name = db.Column(db.String(30))
roll_no = db.Column(db.String(20))
branch = db.Column(db.String(30))
# date_of_join = db.Column(db.DateTime())
usertags = db.relationship('UserTag', backref='user', lazy="dynamic")
questions = db.relationship('Question', backref='user', lazy="dynamic")
answers = db.relationship('Answer', backref='user', lazy="dynamic")
user_date = db.Column(db.DateTime)
def __init__(self, uname, upass, email, name, roll_no, branch):
self.uname = uname
self.upass = upass
self.email = email
self.name = name
self.roll_no = roll_no
self.branch = branch
user_date = date.today()
self.user_date = user_date
def __repr__(self):
return ('<User {}>'.format(self.uname))
class Question(db.Model):
id = db.Column(db.Integer, primary_key=True)
question_text = db.Column(db.String(1000))
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
question_tags = db.relationship('QuestionTag', backref='question', lazy = 'dynamic')#relatioship with question
answers = db.relationship('Answer', backref='question', lazy = 'dynamic')
qu_date = db.Column(db.DateTime)
def __init__ (self,question_text,user):
self.question_text = question_text
self.user = user
qu_date = date.today()
self.qu_date = qu_date
def __repr__(self):
return ('<Question :{}>'.format(self.question_text))
class Answer(db.Model):
id = db.Column(db.Integer, primary_key=True)
answer_text = db.Column(db.String(1000))
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
question_id = db.Column(db.Integer, db.ForeignKey('question.id'))
ans_date = db.Column(db.DateTime)
def __init__ (self,answer_text, user, question):
self.answer_text = answer_text
self.user = user
self.question = question
ans_date = date.today()
self.ans_date = ans_date
def __repr__(self):
return ('<answer {}>'.format(self.answer_text))
class QuestionTag(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(1000))
question_id = db.Column(db.Integer, db.ForeignKey('question.id'))
qt_date = db.Column(db.DateTime)
def __init__ (self,name,question):
self.name = name
self.question = question
qt_date = date.today()
self.qt_date = qt_date
def __repr__(self):
return ('<questiontag {}>'.format(self.name))
class UserTag(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(220))
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
ut_date = db.Column(db.DateTime)
def __init__(self, name, user):
self.name = name
self.user = user
ut_date = date.today()
self.ut_date = ut_date
def __repr__(self):
return ('<UserTag {}>'.format(self.name))
# class AnswerTag(db.Model):
# id = db.Column(db.Integer, primary_key=True)
# answertagname = db.Column(db.String(1000))
# answer_id = db.Column(db.Integer, db.ForeignKey('answer.id'))#foreign key to link with answer
# def __init__ (self,answertagname,answer):
# self.answertagname = answertagname
# self.answer = answer
# def __repr__(self):
# return ('<answertag {}>'.format(self.answertagname))