Django学习-11-请求相关信息】的更多相关文章

requests对象是由类创建的 from django.core.handlers.wsgi import WSGIRequest    --> 类 request.environ中封装了请求的所以信息,environ是一个字典 Django将经常使用的某些值,做了便捷处理          1.使用Django便捷功能          2.自己处理原生数据   request.environ #所有请求的信息都以字典的形式放在里面 request.environ['HTTP_USER_AG…
请求的其他信息 用户发来请求时候,不仅发来数据,也把请求头也发过来 在views.py 怎么找请求数据? request是一个对象,这个对象封装很多信息,可以先查这个对象的类 print(type(request)) from django.shortcuts import reverse def index(request): v = reverse('author:index') print(v) print(type(request)) # 找到这个类 导入这个类 <class 'djan…
1. request里面还包含请求头等信息,可以打印看一下. views.py中的程序 from django.shortcuts import render,HttpResponse from django.urls import reverse # Create your views here. def test(request): print(type(request)) #print(request.environ)#字典格式 #封装了所有用户请求信息 for k,v in reques…
def index(request): print(type(request)) print(request.environ['HTTP_USER_AGENT'])#字典格式 print(request.environ)#字典格式 #封装了所有用户请求信息 # for k,v in request.environ.items(): # print(k,v) return HttpResponse('OK') request.environ['HTTP_USER_AGENT'] 打印出来是用户浏览…
1.前言 刚好最近跟技术部门的[产品人员+UI人员+测试人员],组成了一桌可以去公司楼下醉得意餐厅吃饭的小team. 所以为了实现这些主要点餐功能: 提高每天中午点餐效率,把点餐时间由20分钟优化为1分钟: 知道在哪些付款金额范围内,可以有哪些菜单可以选择: 知道人均付款金额: 知道微信需要付款总金额: 给餐厅老板发的点餐文案: 当前点餐菜单里的具体菜品名和价格: 结合之前学习的知识点,利用django框架的MTV思想,开发一个简单的html页面,让公司同个局域网的同事自己进行操作和查询醉得意菜…
引入jar包 <dependency> <groupId>eu.bitwalker</groupId> <artifactId>UserAgentUtils</artifactId> <version>1.20</version> </dependency> 代码: package com.test; import eu.bitwalker.useragentutils.Browser; import eu.b…
1.for author in Author.objects.all(): for book in author.book_set.all(): print   book 2.vim blog/views.py from blog.models  import Author,Book from  django.shortcuts   import  render_to_response def show_author(req): authors = Author.objects.all() re…
学习NGUI前的准备NGUI的相关信息 第1章  学习NGUI前的准备 NGUI是Unity最重要的插件,在Unity资源商店(Asset Store)的付费排行榜中始终名列前茅,如图1-1所示.本章作为本书的第一讲,内容主要包括以下几个部分本文选自NGUI全面实践教程: q  NGUI的购买/下载和导入过程: q  熟悉NGUI资源的构成: q  熟悉NGUI主菜单的各菜单项: q  熟悉NGUI支持的鼠标快捷操作: 本章的内容可以让读者更加全面的认识NGUI,同时也为本书后面章节的讲解做铺垫…
一,项目题目: 开发图书管理页面 该项目主要练习Django对多个数据库进行增删改查的操作. 二,项目需求: 基础需求:75% 1. 列出图书列表.出版社列表.作者列表 2. 点击作者,会列出其出版的图书列表 3. 点击出版社,会列出旗下图书列表 4. 可以创建.修改.删除 图书.作者.出版社 升级需求:10% 1. 点击修改按钮,弹出模块框,模态框中展示该书的信息且信息可以修改, 2. 书名不可重复,不可修改 3. 修改图书信息时,使用ajax请求发送信息 三,编码规范需求: 编码规范需求:1…
lspci:显示所有PCI设备 lspci命令用来显示系统中的所有PCI总线设备或是连接到该总线上的所有设备. lspci命令的参数选项及说明 -v     显示详细信息 -vv    显示更详细的信息 -s     显示指定总线的信息 [root@linuxprobe ~]# lspci 00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02) 00:01.0 ISA bridge: Intel C…
show table status like 'user';显示表的相关信息 +------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+-------------| Name       | Engine | Version | Row_format | Rows | Avg_row_length…
一:Web投票示例 本节我们首先从全局范围再复习一下Django的概念,让自己对Django的设计理念, 功能模块,体系架构,基本用法有初步的印象. Django初始的详细博客内容:请点击我 该应用包括以下两个部分: 一个可以让公众用户进行投票和查看投票结果的站点 一个可以进行增删改查的后台admin管理界面 在开始之前,我们可以查看安装的Django是什么版本,在命令行输入: python -m django --version 1.1 新建项目 进入我们指定的项目保存目录,然后运行下面的命令…
一:Web框架介绍 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以快速帮你开发特定的系统. Web框架是别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你需要的样子.简单说,就是你用别人搭建好的舞台来表演. 一般Web框架的架构这样的: 其他基于Python的Web框架,图tornado,flask,webpy都是在这个范围内进行增删裁剪的.例如tornado用的是自己的异步非阻塞“wsgi”,flask则只提供了最…
这里将自己这段时间学习的关于前后台数据交互的笔记写在这里,这里包含了Django传输数据给JS,AJAX的相关问题,跨域问题,如何解决AJAX的跨域问题等等.比较凌乱,请看到这篇博客的盆友见谅,如果我将最近学习的这段内容理清楚了,我会再写一篇易于理解的文章做以巩固. 有时候我们想把一个list或者dict等JSON对象传到网页的JavaScript,用JS进行处理,比如用JS将数据可视化显示到网页上,这里说两种: 1,直接在视图函数中渲染一个list或者dict的内容,和网页其他部分一起显示到网…
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen() while True: conn, addr = sk.accept() data = conn.recv(8096) conn.send(b"…
用户认证组件的学习 用户认证是通过取表单数据根数据库对应表存储的值做比对,比对成功就返回一个页面,不成功就重定向到登录页面.我们自己写的话当然也是可以的,只不过多写了几个视图,冗余代码多,当然我们也可以封装成函数,简单代码.不过推荐使用Django提供的一套用户认证组件,原理其实类似,只不过功能更强大. 1,用户认证——auth模块 在进行用户登录验证的时候,如果是自己写代码,就必须要先查询数据库,看用户输入的用户名是否存在于数据库中:如果用户存在于数据库中,然后在验证用户输入的密码,这样一来,…
1.django版本的选择问题 在学习django之前,我们先做一个基本问题的讨论,这个问题是关于django版本的问题.我们进入官网,可以查看django版本的情况. 关于django的版本的问题,现在公司一般用的是1.11.X和2.2.X两种,3.X是2020年8月出来的,所以比较的新,所以我们现在可以忽略3.X的版本学习.等之后过两年左右我们可以转为3.X版本的学习. 1.x 2.x 3.x(目前直接忽略) 我们这次学习使用的是2.2.15的长期支持稳定的版本 1.x和2.x本身差距也不大…
一,项目题目: 开发用户注册与登录系统 该项目主要练习使用Django开发一个用户注册与登录的系统,通过这个项目然后巩固自己这段时间所学习的Django知识. 二,项目需求: 开发一个简单的用户登录与注册系统 要求: 有用户注册页面 有用户登录页面 有用户登录成功的页面 有注册和登录的验证码提示 三,编码规范需求: 编码规范需求:15% 1. 代码规范遵守pep8 (https://python.org/dev/peps/pep-0008/) 2. 函数有相应的注释 3. 程序有文档说明文件(R…
前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下连接数据库需要了解的知识. 其实之前已经有学习过,可以参考博客:Django学习笔记:初始Django 但是这里想详细的进行学习,首先对Django 一些基本的知识点进行了解. 1,Django的流程实现 django #安装: pip3 install django 添加环境变量 #1 创建pro…
Django学习之django自带的contentType表   通过django的contentType表来搞定一个表里面有多个外键的简单处理: 摘自:https://blog.csdn.net/aaronthon/article/details/81714496 contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. models.py文件的表结构写好后,通过makemigrations和migrate两条…
HTTP基本原理1.http简述:http协议永远都是客户端发起请求,服务端回送请求.客户端和服务端本质上是一个socket客户端和服务端,http协议可以说是基于socket的再上层封装2.http特性:1)短链接2)被动响应3)无状态Socket基本原理 结合上图及下面的python代码,我们来一起学习一下socket的基本原理 #!/usr/bin/env python #_*_coding:utf-8_*_ #Author:Tiger At import socket #导入socket…
Django学习之django自带的contentType表   通过django的contentType表来搞定一个表里面有多个外键的简单处理: 摘自:https://blog.csdn.net/aaronthon/article/details/81714496 contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. models.py文件的表结构写好后,通过makemigrations和migrate两条…
Django学习之django自带的contentType表   通过django的contentType表来搞定一个表里面有多个外键的简单处理: 摘自:https://blog.csdn.net/aaronthon/article/details/81714496 contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. models.py文件的表结构写好后,通过makemigrations和migrate两条…
一.注册相关的知识点 1.Form组件 我们一般写Form的时候都是把它写在views视图里面,那么他和我们的视图函数也不影响,我们可以吧它单另拿出来,在应用下面建一个forms.py的文件来存放 2.局部钩子函数 def clean_username(self): username = self.cleaned_data.get("username") valid = models.UserInfo.objects.filter(username = username).first(…
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的请求响应情况. 一句有意思的话来描述就是人生只如初见,对服务器来说,每次的请求都是全新的. 状态可以理解为客户端和服务器在某次会话中产生的数据,那无状态的就以为这些数据不会被保留.会话中产生的数据又是我们需要保存的,也就是说要“保持状态”.因此Cookie就是在这样一个场景下诞生.…
Django学习之DRF-03 视图集    1.视图集介绍    2.视图集基本使⽤        1.需求 使⽤视图集获取列表数据和单⼀数据        2.实现 class BookInfoViewSet(mixins.ListModelMixin, mixins.RetrieveModelMixin, GenericViewSet): """使⽤视图集实现返回列表数据和单⼀数据""" queryset = BookInfo.object…
Django学习之DRF02 Serializer序列化器之反序列化操作    1.调⽤序列化器进⾏验证        0.准备序列化器 class BookInfoSerializer(serializers.Serializer): """图书数据序列化器""" id = serializers.IntegerField(label= 'ID', read_only= True) btitle = serializers.CharField(…
Django框架之表单(续二) 今天的这篇博客将是Django学习笔记博客的最后一篇,基本每周最少一篇的Django框架学习,坚持到今天也实属不易,当然了,这个框架的学习仅仅是Django框架的基础部分了,不过也够我们平时搭个简易的网站或者个人博客什么的.希望通过这一系列的博文,让大家也从中体会到Django框架的魅力所在,如果很不幸,你没有体会到,只能说明我水平有限,无法将如此美丽的事物展示与你,闲话少说,下面开始继续学习表单的相关知识. 编写Contact表单 这个表单包括用户提交的反馈信息…
表单 从Google的简朴的单个搜索框,到常见的Blog评论提交表单,再到复杂的自定义数据输入接口,HTML表单一直是交互性网站的支柱.本次内容将介绍如何用Django对用户通过表单提交的数据进行访问.有效性检查以及其它处理. 与此同时,我们将介绍HttpRequest对象和Form对象. 从Request对象中获取数据 在前面讲述View的函数时已经介绍过HttpRequest对象了,但当时并没有讲太多. 让我们回忆下:每个view函数的第一个参数是一个HttpRequest对象,就像下面这个…
本文主要学习验证码功能的实现,为了项目BBS+Blog项目打下基础. 为了防止机器人频繁登陆网站或者破坏分子恶意登陆,很多用户登录和注册系统都提供了图形验证码功能. 验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序.可以防止恶意破解密码.刷票.论坛灌水,有效防止某个黑客对某一个特定…