温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python中的Flask与Django有什么相同、异同

发布时间:2020-06-15 16:01:16 来源:亿速云 阅读:297 作者:元一 栏目:编程语言

Flask定义

Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。

Flask也被称为 "microframework" ,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。

Django定义

Django是一个开放源代码的Web应用框架,由Python写成。采用了MVT的框架模式,即模型M,视图V和模板T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。

相似之处

让我们从相似之处开始。

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 相对来说更加容易。

以上就是Flask 和 Django 区别的详细内容,更多请关注亿速云其它相关文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI