【百度云搜索,搜各种资料:http://www.lqkweb.com】
Flask 构建微电影视频网站
已上线演示地址: https://www.akp123.com
环境搭建
pip3 install virtualenvwrapper-win
mkvirtualenv FlaskMovie
(FlaskMovie) C:\Users\xxx>pip list
Package Version
---------- -------
pip 18.1
setuptools 40.4.3
wheel 0.32.1
(FlaskMovie) C:\Users\xxx>pip install flask
(FlaskMovie) C:\Users\xxx>pip list
Package Version
------------ -------
Click 7.0
Flask 1.0.2
itsdangerous 0.24
Jinja2 2.10
MarkupSafe 1.0
pip 18.1
setuptools 40.4.3
Werkzeug 0.14.1
wheel 0.32.1
使用PyCharm创建Flask项目
直接运行app.py
,然后通过浏览器访问 http://127.0.0.1:5000/ 即可看到结果
- 扩展丰富
- 冗余度小
- 自由选择组合各种插件
- 性能优越
- 轻量级
- 小型项目快速开发
- 大型项目毫无压力
Flask框架知识
- 学会使用整型、浮点型、路径型、字符串型正则表达式路由转换器
- 学会使用psot与get请求,上传文件,cookie获取与响应,404处理
- 模板自动转移,定义过滤器,定义全局上下文处理器,Jinja2语法、包含、继承、定义宏
- 学会flask-wtf定义表单模型、字段类型、字段验证、视图处理表单、模板使用表单
- 学会flask-sqlachemy定义数据库模型,添加、修改、查询、删除数据,数据库事件、数据迁移
- 使用蓝图优化项目结构,实现微电影网站前台与后台业务逻辑
- flask部署方法,安装nginx、python3、mysql服务以及通过nginx反向代理对视频流媒体限制下载速率,限制单个IP能发起的播放连接数
- 微内核+扩展插件(werkzug工具箱、pymysql数据库驱动、sqlalchermy数据库orm、wtforms表单验证工具、jinjia2模板引擎、flask-script命令行脚本、functools定义高阶函数)
视频技术
- jwplayer播放器插件
- 视频限速限制ip访问
- flv、mp4视频格式支持
- nginx点播实现
项目目录分析
前台模块(home)
- 数据模型:models.py
- 表单处理:home/forms.py
- 模板目录:templates/home
- 静态目录:static
后台模块(admin)
- 数据模型:models.py
- 表单处理:home/forms.py
- 模板目录:templates/home
- 静态目录:static
后台与前台不同的是表单和模板独立
前后台项目目录分析
manage.py # ueke启动脚本
app # 项目app
__init__.py # 初始化文件
models.py # 数据模型文件
static # 静态目录
home
__init__.py # 初始化脚本
views.py # 视图处理文件
forms.py # 表单处理文件
admin
__init__.py # 初始化脚本
views.py # 视图处理文件
forms.py # 表单处理文件
templates
home # 前台模板
admin # 后台模板