Flask 与 Django 的简单对比

Flask

上一周我学习了 Flask ,这一周我打算做一个 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/elsefor 循环和我真正喜欢的模板扩展!

Flask 和 Django之间还有许多相似之处,但对我而言,这是三个主要的相似之处。

差异

Flask 和 Django 的差异还是蛮大的,接下来我们一一探讨。

使用Flask,您可以获得难以置信的灵活性

您在创建 app.py(类似于应用程序的主要逻辑),models.py(在其中存储用于创建数据库表的模型的位置),模板等。您对于应用构建结构有绝对控制权。

使用 Django, 一切都是为您构建的!

settings.py(类似于应用程序的配置文件),models.pyurls.py(所有路由的存储位置),模板等。

这就是为什么 Django 的标签是 为 Deadline 所生的框架 的原因。因为所有功能都是内置的,您无需费心创建文件并思考应用结构如何设计。 一切已准备就绪您可以立即开始构建应用

结论

Flask 和 Django 都有优点和不足,并且每个都有自己的用途和目的。

如果您要开发的应用程序简单而不复杂,那么Flask是您的最佳选择。

但是,如果您是初学者并且想使用 Python 进行 Web 开发,我建议您从 Flask 开始。您在 Flask 中学习的内容可以应用于 Django ,因此 Flask 相对来说更加容易。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://dev.to/benprax/flask-vs-django-1...

译文地址:https://learnku.com/python/t/36875

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!