Django简介 --Python Web
Python Web主流的三种框架:Django、Flask、Tornado,使用频度:Django>Flask>Tornado
一、设计模式
MVC:模型(Model)、View(视图)、Controler(控制器)
二、优点
- 开发效率高
- 功能强大,丰富的第三方插件
- 重视安全,避免很多漏洞
三、安装
pip安装:pip3 install django==2.2.1
官网下载Django安装包,执行: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 %}
Django简介 --Python Web的更多相关文章
- Pycharm+django新建Python Web项目
这两天初学Python,首先是学习Python语法有PyCharm就可以运行Console程序了,因为是初学所以,尽量写的比较详细,包括参考的资料地址... 1.下载Python,并安装[本文版本 ...
- 【Django】Python web开发:几个模板系统的性能对比(转)
http://blog.chedushi.com/archives/910 结论: 点评一下吧.django就是个渣,不多废话了.webpy的代码很简洁,可惜速度太慢了.bottle看起来快一点,不过 ...
- Python Web开发中的WSGI协议简介
在Python Web开发中,我们一般使用Flask.Django等web框架来开发应用程序,生产环境中将应用部署到Apache.Nginx等web服务器时,还需要uWSGI或者Gunicorn.一个 ...
- Django框架(一)-- Django简介
django(Python Web框架) Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的框架模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗 ...
- nginx+gunicorn/uwsgi+python web 的前世今生
我们在部署 flask.django 等 python web 框架时,网上最多的教程就是 nginx+gunicorn/uwsgi 的部署方式,那为什么要这么部署呢,本文就来系统地解释这个问题. 必 ...
- Django Web开发【1】Django简介
前言 看完<Django Book>之后, 总想找个实例来实战开发下,无奈国内Django的书籍相当少,只能从英文书籍中吸取养料,偶然之后得到Learning Website Develo ...
- Django之web应用、http协议和django简介
等了好久终于等到今天,盼了好久终于把梦实现,啦啦啦.....学习python两个多月了,终于等到python的高潮,老师说要是把Django学会了,python的web开发就差不多了,也相当于迎来了p ...
- python 全栈开发,Day67(Django简介)
昨日内容回顾 1. socket创建服务器 2. http协议: 请求协议 请求首行 请求方式 url?a=1&b=2 协议 请求头 key:value 请求体 a=1&b=2(只有p ...
- Django准备知识-web应用、http协议、web框架、Django简介
一.web应用 Web应用程序是一种可以通过web访问的应用程序(web应用本质是基于socket实现的应用程序),程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件 ...
随机推荐
- iwap:修改菜单树文件
1.添加mysql数据库连接的jar包. 2.
- LOJ2541. 「PKUWC2018」猎人杀 [概率,分治NTT]
传送门 思路 好一个神仙题qwq 首先,发现由于一个人死之后分母会变,非常麻烦,考虑用某种方法定住分母. 我们稍微改一改游戏规则:一个人被打死时只打个标记,并不移走,也就是说可以被打多次但只算一次.容 ...
- 对C#中事件的简单理解
对于C#中的事件,我举了个简单的例子来理解事件及其处理. 这个例子中母亲是事件的发布者,事件是吃饭了.儿子和父亲是事件的订阅者,各自的Eat方法是处理事件的方法. 下面是详细的加注的例子: using ...
- wx.navigateTo的url不生效的问题
比如我要要从index页面跳转到logs. 在跳转的时候应该用switchTab,而不是wx.navigateTo 看api这句话 https://developers.weixin.qq.com/m ...
- Jenkins中插件下载失败的解决办法
插件下载失败原因:通过国外服务器下载镜像,有较高的失败率,某些插件下载失败或者中断会引起其他有依赖关系的插件也下载失败 解决方案:1. 使用VPN.2. Jenkins镜像地址改为国内镜像地址:系统管 ...
- 如何用Deepin-wine安装运行win32的程序
创建容器 容器就是win32程序运行的环境,可以理解为一个极小的windows,在Linux下面实际对应一个文件目录,如QQ对应的容器目录是~/.deepinwine/Deepin-QQ. 创建容器最 ...
- Flutter移动电商实战 --(46)详细页_自定义TabBar Widget
主要实现详情和评论的tab provide定义变量 自己做一个tab然后用provide去控制 定义两个变量来判断是左侧选中了还是右侧选中了.并定义一个方法来接受参数,修改是左侧还是右侧选中的状态值 ...
- 软件:IIS上配置CGI
本文的内容是:在Windows7中的IIS6.1中配置CGI功能. 我先讲步骤,步骤全用图来说明,以方便技术还是不熟练的朋友,以下是在Windows7系统来完成的. 目录 一.安装IIS步骤: 0X0 ...
- 【转】nodejs接收前端formData数据
很多时候需要利用formdata数据格式进行前后端交互. 前端代码可以是如下所示: <!DOCTYPE html> <html lang="en"> < ...
- hwclock和date源码分析
一. hwclock 1.1 hwclock源码在哪里? util-linux 或者busybox 1.2 获取源码 git clone https://github.com/karelzak/uti ...