File size: 1,035 Bytes
252d749 591d823 252d749 |
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 |
import asyncio
import orm
import psycopg2
import datetime
import pydantic
from passlib.context import CryptContext
from App.modelInit import database, models
pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto")
class User(orm.Model):
tablename = "users"
registry = models
fields = {
"id": orm.Integer(primary_key=True),
"name": orm.String(max_length=100, index=True),
"email": orm.String(max_length=100, index=True, unique=True),
"password": orm.String(max_length=100, index=True),
"phoneNumber": orm.String(max_length=100, index=True, allow_null=True),
"account_type": orm.Integer(index=True, default=1),
"createdAt": orm.DateTime(index=True, default=datetime.datetime.now),
"updatedAt": orm.DateTime(index=True, default=datetime.datetime.now),
"lastLogin": orm.DateTime(index=True, default=datetime.datetime.now),
}
def verify_password(self, plain_password):
return pwd_context.verify(plain_password, self.password)
|