您现在的位置是:课程教程文章
django有什么用
2023-12-18 23:16课程教程文章 人已围观
Django Web开发系列课程:Django开发Blog项目
Django Web开发系列课程:Django开发Blog项目适合人群: 具备Python语言编程基础,了解Django开发环境的众生。 课程描述:...
测试开发之自动化测试平台django+vue+elem
测试开发之自动化测试平台django+vue+elem...
Django教程(django框架快速上手)
Django教程(django框架快速上手)...
Django Web开发项目课程:MVC模型与Django的
Django Web开发项目课程:MVC模型与Django的适合人群: 具备Python语言编程基础,了解Django开发环境的众生。 技能描述 MV...

Django是一个基于Python的Web应用框架。它与Python的另外一个Web 框架 Flask区别是,它奉行 “包含一切” 的哲学。该理念即为:创建 Web 应用所需的通用功能都应该包含到框架中,而不应存在于独立的软件包中。例如,身份验证、 URL 路由、 模板系统、 对象关系映射 (ORM) 和 数据库迁移等功能都已包含在Django 框架中。虽然看上去失去了一些弹性,但是却可以让你在构建网站的时候更加有效率。
Django的工作方式
Django是一个MTV框架,其架构模板看上去与传统的MVC架构并没有太大的区别。Django将MVC中的视图进一步分解为 Django视图 和 Django模板两个部分,分别决定 “展现哪些数据” 和 “如何展现”,使得Django的模板可以根据需要随时替换,而不仅仅限制于内置的模板。至于MVC控制器部分,由Django框架的URLconf来实现。
优缺点总结
Django的主要目标是使得开发复杂的、数据库驱动的网站变得简单。Django注重组件的重用性和“可插拔性”,敏捷开发和DRY法则(Don’t Repeat Yourself)。在Django中Python被普遍使用,甚至包括配置文件和数据模型。
Django优点:
完美的文档,Django近乎完美的官方文档。
全套的解决方案(full-stackframework + batteries included),基本要什么有什么(比如:cache、session、feed、orm、geo、auth),而且全部Django自己造,开发网站应手的工具Django基本都给你做好了,因此开发效率是不用说的。
强大的URL路由配置,Django让你可以设计出非常优雅的URL。
自助管理后台,让你几乎不用写一行代码就拥有一个完整的后台管理界面。
Django的缺点:(源自Django坚持自己造所有的轮子,整个系统相对封闭)
系统紧耦合,如果你觉得Django内置的某项功能不是很好,想用喜欢的第三方库来代替是很难的,比如说的ORM、Template。要在Django里用SQLAlchemy或Mako几乎是不可能,即使打了一些补丁用上了也会让你觉得非常非常别扭。
自带的ORM远不如SQLAlchemy强大,SQLAlchemy是Python世界里事实上的ORM标准,其它框架都支持SQLAlchemy了,唯独Django仍然坚持自己的那一套。
Template功能比较弱,不能插入Python代码,要写复杂一点的逻辑需要另外用Python实现Tag或Filter。
URL配置虽然强大,但全部要手写,高手和初识Django的人配出来的URL会有很大差异。
Django的auth跟其它模块结合紧密,功能也挺强,但做的有点过了,用户的数据库schema都给你定好了,比如很多网站要求email地址唯一,可schema里这个字段的值不是唯一的。
课程教程:django有什么用上一篇:django能用来做什么
下一篇:没有了