Bootstrap

flask实战项目-04完结篇

1.3.3.1前端设计

修改auth.py

1.3.3.2登录

在forms.py中新增LoginForm验证类

了解cookie和session的区别

在auth.py中修改login视图函数

浏览器访问http://127.0.0.1:5000/auth/login,当输入密码正确时会出现以下画面

其中,出现了SECRET_KEY

需要在config.py中新增SECRET_KEY

此时,浏览器访问http://127.0.0.1:5000/auth/login,当输入密码正确时会出现以下画面,验证登录成功(session已经存在了)

1.3.3.3hook函数

修改app.py,新增2个hook函数

1.3.3.4根据登录区分状态

修改base.html,补充获取用户信息和登录状态

在auth.py中新增logout视图函数

1.3.4博客-问题

1.3.4.1前端设计

与问答相关的路由和视图函数在qa.py中

访问http://127.0.0.1:5000/public_question

1.3.4.2问题逻辑

新建qa的model(ORM模型)---在models.py中

执行migrate三联

flask db init(不需要执行)

flask db migrate

flask db upgrade

新建qa的form检验---在forms.py中

完成路由和视图函数qa.py(对之前的进行更新)

浏览器访问http://127.0.0.1:5000/qa/public_question

提交完成后,重定向到首页

可以在数据库中检查question新增的数据

1.3.4.3登录装饰器

新建decorator.py定义登录装饰器

在qa.py中的public_question视图函数上配置我们自定义的装饰器

注:实际执行过程中,相当于执行了login_required(public_question)(参数)

浏览器访问http://127.0.0.1:5000/qa/public_question

;