Django附带了构建网站所需的大多数技术组件。Flask纯粹只是框架,允许最终用户做出更多决策
Django模板语言(DTL)
Django为你的Web应用程序开发提供了管理面板,数据库界面,目录结构和ORM的全方位体验。
Django:
1. 重量级web框架,功能齐全,提供一站式解决的思路, 能让开发者不用在选择应用上花费大量时间
2. 自带ORM(Object-Relational Mapping 对象关联映射)和模板引擎, 支持JinJa等非官方模板引擎灵活度不高
3. 自带ORM使Django和关系型数据库耦合度过高, 如果要使用非关系型数据库,需要使用第三方库
4. 自带数据库管理app
5. 成熟、稳定开发效率高、相对于Flask,Django的整体封闭性比较好, 适合做企业级网站的开发
6. python web框架的先驱,第三方库丰富
7. 上手容易,开发文档详细、完善、资料丰富
Flask:
1. 轻量级web框架,只有一个内核, 默认依赖两个外部库:Jinja2 模板引擎和Werkzeug WSGI 工具集, 自由,灵活,可扩展性强,开发者可以根据需求自己造轮子
2. 适用于做小型网站以及web服务的API, 开发大型网站无压力,架构需自行设计
3. 与关系型数据库结合不弱于Django,而与非关系型数据库的结合远远 优于Django
4. 处理请求是上下文管理
Django:
1. Django路由映射是通过路由正则匹配映射到每一个模块的;
2. 在django中,路由是浏览器访问服务器时,先访问的项目中的url,
再由项目中的url找到应用中url,这些url是放在一个列表里,
遵从从前往后匹配的规则。
Flask:
1. flask是利用蓝图进行模块划分的,通过app装饰器注册模块蓝图,
在主模块统一调用;
2. 在flask中,路由是通过装饰器给每个视图函数提供的,
而且根据请求方式的不同可以一个url用于不同的作用。
功能相似,但是底层实现不一样
上下文 :
相当于一个容器,保存了Flask程序运行过程中的一些信息.在计算机中,相对于进程而言,上下文就是进程执行时的环境.
请求上下文和应用上下文的区别:
请求上下文:保存了客户端和服务器交互的数据
应用上下文 : 在flask程序运行的过程中,保存了一些配置信息,比如程序文件名,数据库的链接,用户信息等
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)