随笔分类 - Django笔记
摘要:字段类型定义方法: 方法名 功能说明 AutoField() 定义从1开始逐次自增1的整数类型字段,如果模型里没有显示定义该属性,Django会自动将该字段增加到新表结构里。默认情况下,该字段是,主键字段 BigAutoField() 定义64位自增整数类型字段,功能类似于AutoField(),唯
阅读全文
摘要:Django 是python的一个后端服务器框架,用来写web API接口简单且方便。 Djangorestframework 是构建web api的一个强大而灵活的工具包。 Django 官网文档:https://docs.djangoproject.com/en/5.0/ref/settings
阅读全文
摘要:Cookie的作用是为了识别当前用户的身份,当前用户访问服务器后,服务器会根据用户信息生成session(会话),然后将session保存cookie中,并响应给用户。用户再下次访问时带上cookie信息提交给服务器,服务器拿到cookie里面的session解密出来相关信息,确认当前访问的用户是同
阅读全文
摘要:常见的Http的请求方法: GET 向特定资源发出请求(访问网页) POST 向指定资源提交数据处理请求(提交表单,上传文件) OPTION 返回服务器针对特定资源所支持的请求方法 PUT 向指定资源位置上传数据内容 DELETE 请求服务器删除request-URL所标示的资源 HEAD 与GET
阅读全文
摘要:文件上传原理是无论上传的文件格式是什么,将文件以二进制的数据格式读取并写入网站指定的文件里。 在myApp下配置urls.py路由: #myApp urls.py from argparse import Namespace from operator import index from djang
阅读全文
摘要:Django 提供三种方式实现文件下载功能,分别是:HttpResponse、StreamingHttpResponse和FileResponse,三者的说明如下: HttpResponse 是所有响应过程的核心类,它的底层功能类是HttpResponseBase。 StreamingHttpRes
阅读全文
摘要:有时候在浏览网站时,偶尔会遇到404或者500的情况。通常都会有一个错误展示页。在django中要怎么样才能配置达到这种效果呢? 如果要使网站的异常响应必须适用于整个项目,那么就得在项目下的urls.py上进行配置。当前也可以根据项目下的每个应用配置异常页面,如下: #myApp urls.py f
阅读全文
摘要:路由重定向 首先说一下什么是重定向?在浏览器访问某个网页的时候,这个网页不提供响应内容,而是自动跳转到其他网页,由其他网页来生成响应内容。 在django的重定向有两种方式:第一种方式是路由重定向;第二种方式是自定义视图的重定向。路由重定向是使用djanog内置的视图类RedirectView实现的
阅读全文
摘要:什么是路由正向解析?什么又是反向解析呢? 以django的请求生命周期为例,当用户在浏览器中访问网页时,在django路由列表里查找要跳转到那个地址,在根据地址里面的视图函数或视图类进行相应的处理,然后再将结果作为响应内容返回浏览器(也就是请求的响应内容),这是路由的正向解析过程,这个过程是不可逆的
阅读全文
摘要:路由的命名空间和路由命名 一般情况下,随着项目越做越大,网站规模也会越大,其中网页的数量也会增多,如果网站的网址路由过多,在管理或者维护上就会存在一定难度,Django可以为每条路由设置命名空间或路由命名。 命名空间namespace 如以下代码,在项目的urls.py中重新定义路由信息: from
阅读全文
摘要:路由地址-正则表达式 路由的正则表达式是由路由函数re_path定义的,其作用是对路由变量进行截取与判断,正则表达式是以小括号为单位,每个小括号的前后可以使用斜杠或者其他字符将其分隔与结束。代码如下: #myApp urls.py from django.urls import path,re_pa
阅读全文
摘要:路由变量 有时候一个路由可以代表多个不同的页面,如果每个页面都要设置一个路由配置,这种做法明显不可取,在Django在定义路由时,可以对路由设置变量,使路由具有多样性。 路由的变量类型有字符类型、整形、slug和uuid,最为常用的是字符类型和整型。各个类型说明如下: 字符类型:匹配任何非空字符串,
阅读全文
摘要:路由规则 完整的路由包含:路由地址、视图函数或视图类、可选变量、路由命名。其中必须要有的信息:路由地址、视图函数或视图类。路由地址就是我们访问的地址,视图函数(或视图类)即App应用目录下views.py文件中定义的函数或类。 在创建项目时,会自动生成一个urls.py的路由配置文件,而自己在项目下
阅读全文
摘要:动态连接数据库 动态连接数据库是为了在系统不中断的情况下切换到另一个数据库,因为在settings.py中配置数据库时,每次保存都会自动重启Django,在有用户正在使用时,这种操作会导致用户的数据丢失,为避免这种情况。可以将数据库的连接方式写到配置文件中,这样无需修改settings.py的配置就
阅读全文
摘要:数据库配置 项目创建时默认使用Sqlite3数据库,这是一款轻量型的数据库,常用于嵌入式系统开发,而且占用的资源非常少,Sqlite3数据配置信息如下: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME'
阅读全文