python后台框架选型

后台框架选型

Flask与Django对比

  • 数据库支持
  • 管理系统性能
  • 第三方库支持
  • 代码可读性、是否轻量、可维护性、可扩展性
  • 版本迭代难易程度
  • 与前台交互

目录结构

django项目目录结构

应用结构

flask项目目录

API实现

Django:

View.py

Serializer.py

Url.py

flask:

特性框架

Django

Flask

数据库支持

内置ORM,对关系型数据库支持优于Flask,但非关系型数据库支持略差

对SQL和NoSQL都支持

性能

json序列化速度和flask不相上下,Http响应请求速度也差不多,数据库与模版处理速度上Flask要快很多

第三方库

django自带扩展库,自带admin后台,django-restframework可视化api

Flask-scrpit(命令行启动服务)、Flask-Migration(数据库迁移)、Flask-WTF(表单)、Flask-Session

可读性

django项目本身是模块化的,可读性很高

取决于程序员自身

与前台交互

提供接口与必填字段

路由管理

根路由及各应用子路由

flask-restful路由统一管理

版本迭代

修改根路由各应用url

修改蓝图根路由

测试

django自带testCase+client

unittest+client

参考文章:

Django、Flask、tornado性能分析