Добавлена двухфакторная регистрация через email

This commit is contained in:
2021-07-14 16:55:06 +03:00
parent 729012ecca
commit 4cad60b47f
12 changed files with 188 additions and 65 deletions

View File

@@ -1,10 +1,35 @@
import datetime
from flask_login import UserMixin
from werkzeug.security import generate_password_hash
from . import db
class User(UserMixin, db.Model):
__tablename__ = "users"
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(100), unique=True)
password = db.Column(db.String(100))
name = db.Column(db.String(1000))
email = db.Column(db.String, unique=True, nullable=False)
password = db.Column(db.String, nullable=False)
username = db.Column(db.String, unique=True, nullable=False)
registered_on = db.Column(db.DateTime, nullable=False)
last_login = db.Column(db.DateTime, nullable=True)
is_confirmed = db.Column(db.Boolean, nullable=False, default=False)
is_admin = db.Column(db.Boolean, nullable=False, default=False)
def __init__(
self,
email,
password,
username,
is_confirmed=False,
is_admin=False,
):
self.email = email
self.password = generate_password_hash(password, method="sha256")
self.username = username
self.registered_on = datetime.datetime.now()
self.is_confirmed = is_confirmed
self.is_admin = is_admin