flask与djiango区别
首先:
Django 是一个重量级的框架,Flask是一个轻量型的框架;
更多Django教程,可以参考这份指南:《一个完整的Django入门指南》系列教程(中文版)
那么Django框架他到底重在哪呢?
对比Flask框架,Django原生提供了众多的功能组件,让开发更简便快速。
提供项目工程管理的自动化脚本工具
数据库ORM支持(对象关系映射,英语:Object Relational Mapping)
模板
表单
Admin管理站点
文件管理
认证权限
session机制
缓存
Django是用python语言写的开源web开发框架,并遵循MVC设计;
Flask框架轻在哪呢?
Flask 本身相当于一个内核,其他几乎所有的功能都要用到扩展(邮件扩展Flask-Mail,用户认证Flask-Login,数据库Flask-SQLAlchemy),都需要用第三方的扩展来实现。比如可以用 Flask 扩展加入ORM、窗体验证工具,文件上传、身份验证等。Flask 没有默认使用的数据库,你可以选择 MySQL,也可以用 NoSQL。
其 WSGI 工具箱采用 Werkzeug(路由模块),模板引擎则使用 Jinja2。这两个也是 Flask 框架的核心;
Flask 和 Django 路由映射的区别:
1.在Django 中, 路由是浏览器访问服务器时,先访问的项目中的url, 再由项目中的url找到应用中url, 然后找到我们的视图函数; 视图函数然后直接或者间接的继承了Django提供的父类View,配置路由时,使用类视图的as_view()方法来添加;
urlpatterns = [ # 视图函数:注册 # url(r'^register/$', views.register, name='register'), # 类视图:注册 url(r'^register/$', views.RegisterView.as_view(), name='register'), ]
通过View函数中 dispath方法来进行判断请求的是GET 还是POST等;
2. 在Flask 中,路由是通过装饰器给每个视图函数提供的, 而且根据请求方式的不同可以一个 url 用于不同的作用。
来源:PY学习网:原文地址:https://www.py.cn/article.html