Python Web主流的三种框架:Django、Flask、Tornado,使用频度:Django>Flask>Tornado
一、设计模式
MVC:模型(Model)、View(视图)、Controler(控制器)
二、优点
- 开发效率高
- 功能强大,丰富的第三方插件
- 重视安全,避免很多漏洞
三、安装
pip安装:pip3 install django==2.2.1
python setup.py install
Django的基本命令
- startproject:创建一个Django项目
- startapp:创建一个Django应用
- check:校验项目完整性
- runserver:本地简易运行Django项目(进入Django环境,并且运行django项目)
- shell:进入Django项目的Python Shell环境
- test:执行Django用例测试
四、Django的基本命令(数据库相关)
- makemigrations:创建模型变更的迁移文件
- migrate:执行上一个命令创建的迁移文件
- dumpdata:把数据库数据导入到文件
- loaddata:把文件数据导入到数据库
五、Django应用和Django项目的区别
- Django是一个可重用的Python软件包,不可以直接运行。可以管理模型、视图、模板、路由和静态文件等。
- Django项目是基于Django应用的,可以包含一组配置和若干个Django应用。
六、Django项目主要目录/文件
- settings.py:项目配置文件
- urls.py:项目路由配置文件
- manage.py:项目管理文件
七、Django应用主要目录/文件
- view.py:视图处理
- models.py:定义应用模型
- admin.py:定义Admin模块管理对象
- apps.py:声名应用
- test.py:编写应用测试用例
- urls.py:管理应用路由
八、 Django模型层
概念:位于Django视图层与数据库之间,用于Python对象和数据库表之间的转换。
Django为什么使用模型层?
- 屏蔽不同数据库之间的差异
- 使开发者更加专注于业务逻辑的开发
- 提供的很多便捷工具有助开发
九、Django模型层定义字段
- IntegerField:数字类型
- TextField:文本类型
- DateTimeField:日期类型
- AutoField:自增
- primary_key:主键
十、Django Shell
概念:类似Python Shell,用于交互式编程,继承Django项目环境
优点:- 临时性操作使用Django Shell更加方便
- 小范围Debug更简单,不需要运行整个项目
十一、Django Admin
概念:Django项目的后台管理工具,读取定义的模型元数据,提供强大的管理使用页面
为什么使用Django Admin?
- Django Shell添加数据麻烦
- 提供认证用户、显示管理模型、校验输入等功能
- 是管理页面是基础设施中重要的部分
十二、Django的模板系统
概念:分离文档的表现形式和表现内容
特点:模板系统定义了特有的标签占位符 基本语法:- 变量标签:
{ {变量}}
- for循环标签:
{% for x in list %}{% endfor %}
- if-else分支标签:
{% if %}{% else %}{% endif %}