Now, we will create the model that we will use to represent and persist the user. Open the api/models.py
file and add the following lines after the declaration of the AddUpdateDelete
class. Make sure that you add the import statements. The code file for the sample is included in the restful_python_chapter_07_02
folder:
from passlib.apps import custom_app_context as password_context import re class User(db.Model, AddUpdateDelete): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(50), unique=True, nullable=False) # I save the hashed password hashed_password = db.Column(db.String(120), nullable=False) creation_date = db.Column(db.TIMESTAMP, server_default=db.func.current_timestamp(), nullable=False) def verify_password(self, password): return password_context.verify(password, self.hashed_password) def check_password_strength_and_hash_if_ok(self, password): if len(password) < 8: ...