Django2.2
因为爱所以付出,因为付出所以更爱!
Howdu
这个作者很懒,什么都没留下…
展开
-
从入门到深入及数据迁移(Django迁移)
Django迁移:入门从1.7版开始,Django就内置了对数据库迁移的支持。 在Django中,数据库迁移通常与模型密切相关:每当编写新模型时,还会生成迁移以在数据库中创建必要的表。 但是,迁移可以做得更多。在本文中,熟悉Django迁移并学习以下内容:如何在不编写任何SQL的情况下创建数据库表更改模型后如何自动修改数据库如何还原对数据库所做的更改迁移解决的问题如果不熟悉Django或Web开发,可能不熟悉数据库迁移的概念,它们带来的好处可能并不明显。首先,让我们快速定义几个术语。 D转载 2020-06-25 21:00:58 · 1507 阅读 · 0 评论 -
Mac、Windows下搭建Python虚拟环境
1、简述可在电脑上创建N个Python虚拟环境,并且每个Python虚拟环境是相互隔离的。2、虚拟环境 virtualenv2.1 安装pip install virtualenv2.2 创建虚拟环境在终端输入: virtualenv 环境名(最好与项目同名) # 注:默认在本级目录下创建【环境名】文件夹如何给虚拟环境中添加Python解释器呢?# 假设,电脑中安装了python2.7的环境和python3.5的环境。# 给虚拟环境中添加片python2.7的环境virtual原创 2020-06-02 21:14:34 · 301 阅读 · 0 评论 -
创建虚拟环境
1.虚拟环境 virtualenv1.1. 安装pip3 install virtualenv1.2 创建虚拟环境virtualenv 环境名称# 注意 创建 【环境名称】 文件夹,放置所有的环境,进入指定目录 virtualenv 环境名称 --python=python3.6virtualenv 环境名称 --python=‘C:\python\python3.6.exe’virtualenv 环境名称 --python=python2.71. 打开终端2. 安装:virtua原创 2020-05-23 16:23:56 · 931 阅读 · 0 评论 -
Django2.X—Django模板引擎
Django模板引擎Django内置的模板引擎包含模板上下文(亦可称为模板变量)、标签和过滤器,各个功能说明如下:模板上下文是以变量的形式写入模板文件,变量值由视图函数或视图类传递所得。标签是对模板上下文进行控制输出,比如模板上下文的判断和循环控制等。模板继承隶属标签,它是将每个模板文件重复代码抽取出来并写在一个共用的模板文件中,其他模板文件通过继承共用模板文件夹实现完整的网页输出。过...原创 2020-04-27 20:11:47 · 186 阅读 · 0 评论 -
Django2.X—FBV视图(全面)
视图是django的MTV架构模式的V部分,主要负责处理用户请求和生成响应内容,然后在页面或其他类型文档中显示。也可以理解为视图是MVC架构里面的C部分,主要处理功能和业务上的逻辑,我们习惯使用视图函数处理HTTP请求,即在视图定义def函数,这种方式称为FBV(Function Base Views )。1、设置响应方式1.1 返回响应内容视图函数是通过return方式返回,然后生成相应的...原创 2020-04-25 22:14:15 · 270 阅读 · 0 评论 -
Django—HTTP请求对象
HTTP请求对象网站时根据用户请求来输出相应的响应内容,用户请求是指用户在浏览器上访问某个网址链接操作,浏览器会根据网址链接信息向网站发送HTTP请求,那么,当Django接收到用户请求时,它是如何获取用户请求信息的呢?1、 获取请求信息当在浏览器上访问某个网址时,其实质时向网站发送一个HTTP请求,HTTP请求分为8种请求方式,每种请求方式的说明如下:请求方式说明OP...原创 2020-04-25 22:13:34 · 320 阅读 · 0 评论 -
cookie和session的区别与联系
cookie机制Cookie是浏览器支持的存储方式,类似于python中的dict,拥有Key和Valuehttp协议:无状态的协议,第一次请求和第二次请求之间没有联系。如下图:一般情况下这种协议是没问题的,比如A浏览一个新闻,B浏览一个新闻,那么服务器只需要把新闻返回给客户端就可以了。但是在一些特殊的情况下,比如淘宝,我们在没有登录的情况下浏览了某些商品,那么淘宝也会记住的...转载 2020-04-25 21:55:29 · 851 阅读 · 0 评论 -
{%csrf_token%}的作用 & {{ }} 与{% %} 的区别
{%csrf_token%}的作用<form>{%csrf_token%}</form>在django中我们需要在templates的form中加入{%csrf_token%}这串内容,它的作用是当我们get表单页面时,服务器返回页面的同时也会向前端返回一串随机字符,post提交时服务器会验证这串字符来确保用户是在服务端返回的表单页面中提交的数据,防止有人通过例如...原创 2020-04-25 20:42:47 · 2185 阅读 · 0 评论 -
Django2.X—文件下载功能
文件下载功能响应内容除了返回网页信息外,还可以实现文件下载功能,是网站常用的功能之一。Django提供三种方式实现文件下载功能,分别是HttpResponse、StreamingHttpResponse和FileResponse,三者说明如下:HttpResponse是所有响应过程的核心类,它的底层功能类是HttpResponseBase.StreamingHttpResponse是在Ht...原创 2020-04-23 22:03:53 · 244 阅读 · 0 评论 -
Django2.X-异常响应
异常响应异常响应是指HTTP状态码或500的响应状态,它与正常的响应过程(HTTP状态码为200的响应过程)是一样的,只是HTTP状态码有所不同,因此使用函数render作为响应过程,并且设置参数status的状态码(404或500)即可实现异常响应。同一个网站的每种异常响应所返回的页面都是相同的,因此网站的异常响应必须适用于整个项目的所有应用。而在Django中配置全局的异常响应,必须在项目...原创 2020-04-23 22:02:49 · 148 阅读 · 0 评论 -
Django2.X-设置重定向
设置重定向重定向的状态码分为301和302,前者时永久性跳转,后者是临时性跳转的,两者的区别在于搜索引擎的网页抓取。301重定向是永久的重定向,搜索引擎在抓取新内容的同时会将旧的网址替换为重定向之后的网址。302跳转时暂时的跳转,搜索引擎会抓取新内容而保留旧的网址。因为服务器返回302代码,所以搜索引擎认为新的网址只是暂时的。主要讲述redirect函数,函数时将HttpResponseRed...原创 2020-04-23 22:01:52 · 639 阅读 · 0 评论 -
Django2.X-返回响应内容
视图函数是通过return方式返回,然后生成相应的网页内容呈现在浏览器上,return是Python的内置语法,用于设置函数的返回值,若要设置不同的响应方式,则需要使用Django内置的响应类。如图:响应类型说明HttpResponse(‘Hello world’)状态码200,请求已成功被服务器接受HttpResponseRedirect(’/’)状态码302,重...原创 2020-04-23 22:00:54 · 284 阅读 · 0 评论 -
Django—路由(全面)
一个完整的路由包含:路由地址、视图函数(或者视图类)、可选变量和路由命名。1、路由定义规则路由称为URL,是对可以从互联网上得到的资源位置和访问方法的一种简洁的表示,是互联网标准资源的地址。互联网上的每个文件都有一个唯一的路由,用于指出网络文件的路径位置。简单说,路由可视为我们常说的网址,每个网址代表不同的网页。1.1 Django2.X路由定义这种路由设计模式下,工作原理如下:运行M...原创 2020-04-22 17:21:50 · 1752 阅读 · 0 评论 -
Django2.X—在模板中使用路由
在模板中使用路由从网站开发的角度分析,网站代表路由,若想将项目定义的路由的路由显示在网页上,则要在模板上使用模板语法来生成路由地址。Django内置了一套模板语法,它能将Python的语法转换成HTML语言,然后通过浏览器解析HTML语言并生成相应的网页内容。项目环境搭建后,在MyDjango文件夹的urls.py中使用urls.py中使用路由函数path和include定义项目应用文件夹in...原创 2020-04-22 17:20:54 · 286 阅读 · 0 评论 -
Django—路由重定向
路由重定向重定向称为HTTP协议重定向,也可以称为网页跳转,它对HTTP状态码为301、302、303、307、308。简单来说,网页重定向就是在浏览器访问某个网页的时候,这个网页不提供响应内容,而是自动跳转到其他网址,由其他网址来生成响应内容。Django的网页重定向有两种方式:第一种方式是路由重定向;第二种方式是自定义视图的重定向。 两种重定向方式各有优点,前者是使用Django内置的视图...原创 2020-04-22 17:18:33 · 884 阅读 · 0 评论 -
Django2.X—反向解析reverse与resolve
反向解析reverse与resolve路由除了在模板里使用之外,还可以在视图里使用。我们知道Django的请求生命周期是指用户在浏览器访问网页时,Django根据网址在路由列表里查询相应的路由,再从路由里找到视图函数或视图类进行处理,将处理结果作为响应内容返回浏览器并生成网页内容。这个生命周期是不可逆的,而在视图里使用路由这一过程被称为反向解析。 Django的反向解析主要由函数reverse和...原创 2020-04-22 11:13:21 · 610 阅读 · 0 评论 -
Django2.X—路由命名空间与路由命名
命名空间与路由命名1、 命名空间namespace在MyDjango项目中创建新的项目应用user,并且在user文件里创建urls.py,然后配置文件settings.py的INSTALLED_APPS中添加项目应用user,使得Django在运行的时候能够识别项目应用user。在MyDjango文件夹的urls.py中重新定义路由信息,分别指向index文件夹的urls.py和user文件...原创 2020-04-21 22:47:48 · 453 阅读 · 0 评论 -
Django2.X—路由定义规则
一个完整的路由包含:路由地址、视图函数(或者视图类)、可选变量和路由命名。1、路由定义规则路由称为URL,是对可以从互联网上得到的资源位置和访问方法的一种简洁的表示,是互联网标准资源的地址。互联网上的每个文件都有一个唯一的路由,用于指出网络文件的路径位置。简单说,路由可视为我们常说的网址,每个网址代表不同的网页。1.1 Django2.X路由定义这种路由设计模式下,工作原理如下:运行M...原创 2020-04-20 21:23:28 · 525 阅读 · 1 评论 -
Django配置信息(全面)
Django的配置文件setting.py用于配置整个网站的环境和功能,核心配置必须有项目密钥配置、域名访问权限、App列表、中间件、资源文件、模板配置、数据库的连接方式。1、基本配置信息一个简单的项目必须具备的基本配置信息有:项目路径、密钥配置、域名访问权限、App列表和中间件。项目的settings.py的基本配置如下:import os# 项目路径# Build paths i...原创 2020-04-18 22:35:10 · 482 阅读 · 0 评论 -
Django数据库配置
数据库配置数据库配置是选择项目所使用的数据类型,不同的数据库需要设置不同的数据库引擎,数据库引擎实现项目于与数据库的连接。Django提供4种数据库引擎。‘django.db.backends.postgresql’‘django.db.backends.mysql’‘django.db.backends.sqlite3’‘django.db.backends.oracle’项目创...原创 2020-04-18 22:31:40 · 433 阅读 · 0 评论 -
Django模板配置信息
模板配置在Web开发中,模板是一种特殊的HTML文档。这些HTML文档嵌入了一些能够识别的变量和指令,然后由Django的模板引擎解析这些变量和指令,生成完整的HTML网页并返回给用户浏览。模板Django里面的MTV框架模式的T部分,配置模板路径是告诉Django在解析模板时,如何找到模板所在的位置。创建项目时,Django已有初始的模板配置。如下所示:TEMPLATES = [ {...原创 2020-04-18 20:27:21 · 532 阅读 · 0 评论 -
Django资源文件配置
资源文件配置资源文件配置分为静态资源和媒体资源。静态资源的配置方式由配置属性STATIC_URL、STATICFILES_DIRS和STATIC_ROOT进行配置;媒体资源的配置方式有配置属性MEDIA_URL和MEDIA_ROOT决定。静态资源: 指的是网站中不会改变的文件。在一般的应用程序中,静态资源包括CSS文件、Javascript文件以及图片等资源文件。媒体资源: 对于一些经常变...原创 2020-04-18 20:26:04 · 285 阅读 · 0 评论 -
Django的基本信息配置
Django的配置文件setting.py用于配置整个网站的环境和功能,核心配置必须有项目密钥配置、域名访问权限、App列表、中间件、资源文件、模板配置、数据库的连接方式。一个简单的项目必须具备的基本配置信息有:项目路径、密钥配置、域名访问权限、App列表和中间件。项目的settings.py的基本配置如下:import os# 项目路径# Build paths inside the...原创 2020-04-18 20:24:27 · 127 阅读 · 0 评论 -
Django目录结构及含义
1、目录结构2、创建项目首先创建项目,利用Pycharm创建项目后,会默认生成则MyDjango文件夹和manage.py文件。如图:其中manage.py和MyDjango文件夹中的4个文件说明如下:manage.py:命令行工具,内置多种方式与项目进行交互。在命令提示符窗口下,将路径切换到MyDjango项目并输入python manage.py help,可以查看该工具的指令信...原创 2020-04-16 22:48:40 · 4228 阅读 · 0 评论 -
Django操作指令
Django的操作指令共有30条,可在Terminal中输入python manage.py help并按回车键查看。指令说明changepassword修改内置用户表的用户密码createsuperuser为内置用户表创建超级管理员账号remove_stale_contenttypes删除数据库中已不使用的数据表check检测整个项目是否存在异常问...原创 2020-04-16 21:32:54 · 201 阅读 · 0 评论 -
MVC和MTV框架模式的区别
一 . MCV# web服务器开发最著名的MVC模式M : model.py 就是和数据库打交道的, 创建表等操作V : view 视图(视图函数,就是装HTML文件的)C : controller 控制器(就是URL里面的文件内容,其实就是在浏览器上发的请求)二 . MTVDjango 叫做 MTV 框架 M : model.py 和数据库打交道的创建表等操作T ...转载 2020-04-16 20:59:20 · 767 阅读 · 0 评论