背景
最近在看了一些flask的入门书籍和官方的文档,想通过一个简单的实例,来练习一下flask中的一些技术点
预实现功能
权限控制:
-
未登录-可查看书籍列表,可点击查看,跳转电子书籍预览页
-
已登录管理员用户-可查看、编辑、删除、新增书籍
登录功能:
- 使用Werkzeug来生成和验证密码的加密散列值
- 使用flask-login来实现用户认证
增删改查:
- 通过flask-sqlalchemy实现数据层的控制
日志记录
- 通过loguru封装,记录项目日志
前端页面构造:
- 通过原生js+css+flask自带的模板渲染引擎Jinja2进行渲染(前后端不分离)
- 创建base模板,通过模板继承机制填充多个子模块
前置条件
1.安装python(我的版本是3.9):
https://www.runoob.com/python/python-install.html
2.配置虚拟环境: