Django和Flask是python web框架的其中两种,也是当今web比较流行的框架,那这两种框架到底有什么区别呢?下面小猿圈加加就说一下它们的区别。python
Django 是一个重量级的框架,Flask是一个轻量型的框架;web
Django框架:数据库
Django是基于中间件的一个大型框架。框架自己的内容至关丰富,基础部分:模版引擎、ORM、表单、路由分发这些标配,还有很多的中间件:登录、后台管理,这些仍是官方中间件。框架
另外还有很多的第三方中间件。关于第三方的没怎么专门研究,不能评论质量的好坏。工具
还有由ROR带起的基于命令的Web开发方式和扩展、还有内建的数据库迁移,基本上Django都有。能够说Django和Python至关匹配,前者是Web开发的重中之重,后者是开发领域的重中之重。学习
另外Django这个框架自己还有一个专门的基金会,这个基金会是由Django的母公司成立的,估计有很多用这个框架的公司也对期捐助过。框架自己至关活跃,每隔大概8个月就有一个大版本。设计
Django是用python语言写的开源web开发框架,并遵循MVC设计。中间件
Flask框架:模板引擎
Flask 自己至关于一个内核,其余几乎全部的功能都要用到扩展(邮件扩展Flask-Mail,用户认证Flask-Login,数据库Flask-SQLAlchemy),都须要用第三方的扩展来实现。好比能够用 Flask 扩展加入ORM、窗体验证工具,文件上传、身份验证等。Flask 没有默认使用的数据库,你能够选择 MySQL,也能够用 NoSQL。路由
其 WSGI 工具箱采用 Werkzeug(路由模块),模板引擎则使用 Jinja2。这两个也是 Flask 框架的核心。
Flask,若是您专一于体验和学习机会,或者您想对选用哪一个组件有更大的控制权(例如您想使用哪一个数据库和如何与它们交互)。
换句话说,若是您是位初学者,Flask多是个更好的选择,由于用到的组件比较少。
若是您想要更多的定制,那么Flask也是个更好的选择。
综上所述,鉴于Django和Flask的特色,若是你是开发一个REST API的系统,没有复杂分层和逻辑的话,Flask是一个不错的选择;若是须要装不少Flask组件才能实现功能的话,建议使用Django,开发会更简便快速;如今对这两种框架不迷茫了吧,小编正在学习这两种框架,能够一块儿学习,一块儿努力。