-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmodels.py
43 lines (34 loc) · 1.47 KB
/
models.py
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
from flask_sqlalchemy import SQLAlchemy
from werkzeug import generate_password_hash, check_password_hash
db = SQLAlchemy()
class User(db.Model):
__tablename__ = "customer"
username = db.Column(db.String(120), primary_key=True)
email = db.Column(db.String(120))
firstname = db.Column(db.String(100))
lastname = db.Column(db.String(100))
password = db.Column(db.String(54))
confirmed = db.Column(db.Boolean, default=False, nullable=False)
def __init__(self,username, firstname, lastname, email, password):
self.username = username
self.firstname = firstname
self.lastname = lastname
self.email = email
self.set_password(password)
def set_password(self, password):
self.password = generate_password_hash(password)
def check_password(self, password):
return check_password_hash(self.password, password)
def __repr__(self):
return '<username %r>' % self.password
class PremiumCustomer(db.Model):
__tablename__ = "premiumcustomer"
premiumid = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(120),db.ForeignKey('customer.username'))
paymentstatus = db.Column(db.String(120),default="NULL")
ispremium = db.Column(db.Boolean, default=False, nullable=False)
paymentid = db.Column(db.String(100),default="NULL")
def __init__(self,username):
self.username = username
def __repr__(self):
return '<username %r>' % self.password