下面讲到Flask-Login 这个扩展
要用到这个扩展,就要在模型文件里面添加一些内容了
app/models.py:修改User 模型,支持用户登录
class User(UserMixin,db.Model):
__tablename__='users'
id=db.Column(db.Integer,primary_key=True)
email=db.Column(db.String(64),unique=True,index=True)
username=db.Column(db.String(64),unique=True,index=True)
role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))
password_hash=db.Column(db.String(128))
示例中同时还添加了email 字段。在这个程序中,用户使用电子邮件地址登录,因为相对于用户名而言,用户更不容易忘记自己的电子邮件地址。
Flask-Login 在程序的工厂函数中初始化,如示例8-7 所示。app/__init__.py:初始化Flask-Login
from flask.ext.login