Flask与Django哪个更好更实用呢?砖家是这么认为的
这一周我打算做一个 Flask 教程。本文先把 Flask 和 Django 做一个比对,因为我对这两个 Python Web 框架都有实际的开发经验。希望我可以帮助您选择学习哪个框架,因为学习一个框架可能会非常耗时 —— 当然也很有趣!
注意:我只花了一个星期的时间在 Flask 上,而我已经用了三年的 Django。
相似之处
让我们从相似之处开始。
1) Flask 和 Django 都是 Python Web 开发框架
它们使您能够使用 Python 在服务端创建 Web 应用,并使用 html 和 CSS 作为前端,或者使用您喜欢的任何前端框架。
2) 可以使用 ORM 或对象关系映射
这基本上意味着,您可以使用 SQLITE,MYSQL,PostgreSQL 和其他利用 ORM 的数据库。
-Django 默认使用 ORM
-Flask 默认情况下不具备 ORM 功能。需要时可手动添加它。
3) 模板.
-Django 使用类似于 Jinja 的模板引擎(实际上 Jinja 的灵感来自于 Django 自己的模板系统)
小评论:Django 不使用 Jinja,但它有自己的模板引擎。它们看起来很相似,因为正如 Jinja 的网站所说,『它的灵感来自于 Django 的模板系统』。
-Flask 使用 Jinja 作为其模板引擎。
Jinja 基本上就像 HTML 的 Python(python + html = Jinja),它使您能够向 HTML 添加逻辑,例如 if/else,for循环和我真正喜欢的模板扩展!
Flask 和 Django 之间还有许多相似之处,但对我而言,这是三个主要的相似之处。
差异
Flask 和 Django 的差异还是蛮大的,接下来我们一一探讨。
使用 Flask,您可以获得难以置信的灵活性。
您在创建 app.py(类似于应用程序的主要逻辑),models.py(在其中存储用于创建数据库表的模型的位置),模板等。您对于应用构建结构有绝对控制权。
使用 Django, 一切都是为您构建的!
settings.py(类似于应用程序的配置文件),models.py,urls.py(所有路由的存储位置),模板等。
这就是为什么 Django 的标签是 为 Deadline 所生的框架 的原因。因为所有功能都是内置的,您无需费心创建文件并思考应用结构如何设计。 一切已准备就绪,您可以立即开始构建应用。
结论
Flask 和 Django 都有优点和不足,并且每个都有自己的用途和目的。
如果您要开发的应用程序简单而不复杂,那么 Flask 是您的最佳选择。
但是,如果您是初学者并且想使用 Python 进行 Web 开发,我建议您从 Flask 开始。您在 Flask 中学习的内容可以应用于 Django ,因此 Flask 相对来说更加容易。
另外很多人在学习Python的过程中,往往因为没有好的教程或者没人指导从而导致自己容易放弃,为此我建了个Python全栈开发交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目可拿,不懂的问题有老司机解决哦,一起相互监督共同进步
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
Flask与Django哪个更好更实用呢?砖家是这么认为的的更多相关文章
- 10款让WEB前端开发人员更轻松的实用工具
这篇文章介绍10款让Web前端开发人员生活更轻松的实用工具.每个Web开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具,所以如 ...
- 十款让 Web 前端开发人员更轻松的实用工具
这篇文章介绍十款让 Web 前端开发人员生活更轻松的实用工具.每个 Web 开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具, ...
- 【转】十款让 Web 前端开发人员更轻松的实用工具
这篇文章介绍十款让 Web 前端开发人员生活更轻松的实用工具.每个 Web 开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具, ...
- Django入门到进阶-更适合Python小白的系统课程
Django入门到进阶-更适合Python小白的系统课程 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身 ...
- 详说Flask、Django、Pyramid三大主流 Web 框架
前言 目前随着 Python 在大数据.云计算.人工智能方面的热度,Python Web 应该也会被更多企业了解使用. Python Web 框架千万种,没必要都去了解和学习,身边总有人说高手都用 F ...
- Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析
默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...
- 采用ADM2483磁隔离器让RS485接口更简单更安全
采用ADM2483磁隔离器让RS485接口更简单更安全 摘要:本文介绍RS485的特点及应用,指出了普通RS485接口易损坏的问题,针对存在的问题介绍了以ADM2483为核心的磁隔离解决方案. 关键词 ...
- 正则表达式匹配可以更快更简单 (but is slow in Java, Perl, PHP, Python, Ruby, ...)
source: https://swtch.com/~rsc/regexp/regexp1.html translated by trav, travmymail@gmail.com 引言 下图是两种 ...
- 金蝶随手记团队分享:还在用JSON? Protobuf让数据传输更省更快(实战篇)
本文作者:丁同舟,来自金蝶随手记技术团队. 1.前言 本文接上篇<金蝶随手记团队分享:还在用JSON? Protobuf让数据传输更省更快(原理篇)>,以iOS端的Objective-C代 ...
随机推荐
- IKAnalyzer使用
1.分析器 所有分析器最终继承的类都是Analyzer 1.1 默认标准分析器:StandardAnalyzer 在我们创建索引的时候,我们使用到了IndexWriterConfig对象,在我们创建索 ...
- leetcode 0205
目录 700 二叉搜索树中的搜索 175 组合两个表 仍旧不理解 left join 590. N叉树的后序遍历 递归: 迭代: 589 N叉树的前序遍历 递归, 注意 递归 过程中附带的 actio ...
- 解决centos7命令无法补全
背景 偶然发现本地虚拟机centos 7.7配置firewalld-cmd命令行无法补全,手敲命令太多,着实麻烦 解决方案 安装linux命令行补全工具,还能够补全命令参数 yum install b ...
- linux kali 的ifconfig命令
ifconfig命令 1.ifconfig执行页面 root@localhost:/home/zys# ifconfig lo: flags=73<UP,LOOPBACK,RUNNING> ...
- java窗口程序字符串时间转成时间戳
pom.xml 文件: ?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...
- idea激活,使用破解补丁无需注册码
idea激活,使用破解补丁无需注册码 2017年08月19日 10:57:54 标签: idea / 破解 / 补丁 / 软件 / 13891 编辑 删除 idea激活,JetBrain旗下软件激活 ...
- 质因数分解(0)<P2012_1>
质因数分解 (prime.cpp/c/pas) [问题描述] 已知正整数n是两个不同的质数的乘积,试求出较大的那个质数. [输入] 输入文件名为prime.in. 输入只有一行,包含一个正整数n. [ ...
- Airless Pump Bottle For The Rise Of Cosmetic Packaging Solutions
Airless Pump Bottle are used in the rise of cosmetic packaging solutions. According to the suppli ...
- 2020新春公益赛 writeup
简单的招聘系统 无需注册账号,admin'or 1#登陆,到blank page页面,在输入key处发现有注入点: /pages-blank.php?key=1%27+union+select+1%2 ...
- 笔记-python-standard library-8.3.collections
笔记-python-standard library-8.3.collections 1. collections简介 Source code: Lib/collections/__init ...