Model - 模型¶
-
class
app.models.
Movie
(**kwargs)[源代码]¶ 类变量
__tablename__
定义在数据库中使用的表名。类变量
__searchable__
定义可以搜索的列。类变量
__analyzer__
定义搜索使用的分词器。列名 说明 id 序号 title 电影名 original_title 借阅时间 directors 导演 casts 主演 genres 类型 year 上映年份 rating 评分 images 封面图片 alt 豆瓣链接 amount 库存 counts 借阅次数 -
alt
¶
-
amount
¶
-
casts
¶
-
counts
¶
-
directors
¶
-
genres
¶
-
id
¶
-
images
¶
-
movie
¶
-
original_title
¶
-
rating
¶
-
title
¶
-
year
¶
-
-
class
app.models.
Permission
[源代码]¶ 列出了要支持的用户角色以及定义角色使用的权限位。
值(int) 说明 BORROW 借阅 RETURN 归还 MODERATE_MOVIE 修改影片 ADMINISTER 超级管理员 -
ADMINISTER
= 128¶
-
BORROW
= 1¶
-
MODERATE_MOVIE
= 4¶
-
RETURN
= 2¶
-
-
class
app.models.
Record
(**kwargs)[源代码]¶ 列名 说明 customer_id 客户序号 movie_id 电影序号 timestamp 借阅时间 -
customer_id
¶
-
movie_id
¶
-
timestamp
¶
-
-
class
app.models.
Role
(**kwargs)[源代码]¶ 类变量
__tablename__
定义在数据库中使用的表名。列名 说明 id 序号 name 角色名 default 默认值 permissions 权限位 -
default
¶
-
id
¶
-
static
insert_roles
()[源代码]¶ 注解
将角色插入到数据库
insert_roles()
函数并不直接创建新角色对象,而是通过角色名查找现有的角色, 然后再进行更新。只有当数据库中没有某个角色名时才会创建新角色对象。如此一来,如果以后更新了角色列表,就可以执行更新操作了。
要想添加新角色,或者修改角色的权限,修改
roles
数组,再运行函数即可。
-
name
¶
-
permissions
¶
-
users
¶
-
-
class
app.models.
User
(**kwagrs)[源代码]¶ 类变量
__tablename__
定义在数据库中使用的表名。列名 说明 id 序号 eamil 邮箱 username 用户名 role_id 角色序号 password_hash 密码哈希值 confirmed 是否验证 amount 最大借阅数量 avatar_url 头像地址 注解
使用
UserMixin
使用
flask_login
中的UserMixin
代替自己实现的用户方法is_authenticated()
如果用户已经登录, 必须返回True
, 否则返回False
。is_active()
如果允许用户登录, 必须返回True
, 否则返回False
, 如果要禁用账户, 可以返回False
。is_anonymous()
对普通用户必须返回False
。get_id()
必须返回用户的唯一标识符, 使用Unicode
编码字符串。-
amount
¶
-
avatar_url
¶
-
borrowed_movies
¶ 当前用户借阅中的影片列表
返回类型: list
-
confirm
(token)[源代码]¶ 注解
检验令牌
如果检验通过, 则把
confirmed
属性设为True
。除了检验令牌,
confirm()
方法还检查令牌中的id
是否和存储在current_user
中的已登录用户匹配。如此一来, 即使恶意用户知道如何生成签名令牌, 也无法确认别人的账户。
-
confirmed
¶
-
customer
¶
-
email
¶
-
id
¶
-
password
¶ 拒绝用户读取 password 属性的值
-
password_hash
¶
-
role_id
¶
-
username
¶
-