Django知识梳理

请求周期:

    url > 路由 > 函数或类 > 返回字符串或模板语言

Form 表单提交: 

    先处理模板语言再讲HTML发出去
      提交 > url > 函数或类中的方法  ————
          - httpResponse()     |
            render(request)     |
            redirect(‘/index‘)       |
           用户 < 返回字符串 <——

       

      注:当为redirect时,自动发起另外的请求

ajax    

$.ajax({
				url:‘/index‘,
				data: {‘k‘:1,‘f‘:1},
				type:‘POST‘,
				dataType:‘JSON‘,
				traditional:true,
				success:function(d){
					location.reload		#刷新
					location.href = ‘某个地址‘  #跳转,代替redirect

				}
			})

  

路由系统URL

    1.

      a. /index/
      b. /index/(\d+)
      c. /index/(?P<nid>\d+)
      d. /index/(?P<nid>\d+) name = ‘root‘
        reverse()
        {% url ‘root‘ 1%}
      e. /crm/ include(‘app01.urls‘)
      f. 默认值
        /index/ {‘web‘:‘root‘}

        def func(request,web)
          return ...
      g.命名空间
        /admin/ include(‘app01.urls‘,namespace=‘author‘)
        /crm/ include(‘app01.urls‘,namespace=‘publisher‘)

        app01.urls
        /index/ name = detail
        reverse(‘author‘:detail)

    2.

          def func(request):
            request.POST
            request.GET
            request.FILES
            request.method
            request.path_info

            return render,HttpResponse,redirect

    3.Views

          request.body
            request.POST
            request.GET
            request.FILES
            requset.xxxx.getlist

          request.Meta
            request.method
            request.path_info
            request.COOKIES

          -请求的其他信息
            from django.core.handles.wsgi import WSGIrequest

            a = ‘中国‘
            return HttpResponse(a)
            return render
            return redirect

            response[‘name‘] = ‘arnol‘ #返回到响应头
            response.set_cookie()
            return response

装饰器    

      FBV
      CBV
      from django.utils.decorators import method_decorator
      @method_decorator(装饰函数)

      @method_decorator(装饰函数)
      def dispatch(self,request):
      return super(类名,self).dispatch(request,*args,**kwargs)

      @method_decorator(装饰函数,name=‘dispatch‘)
      class Order(Views.view)

时间: 2024-10-18 10:56:00

Django知识梳理的相关文章

指针知识梳理7- 函数指针

一.函数的地址 前面讲 程序运行起来以后,在内存中有代码区,程序运行每一条指令,是从内存中读出来这条指令,然后再运行. 所谓函数的地址是指函数的入口地址,这个函数的从这个地址開始进入运行,也就是从这个地址处取指令运行. 那么在代码层面,函数的地址用 函数指针变量 来存储. 二.基本使用 1.函数指针定义 函数指针的定义,在语法看起来略微有点怪,仅仅须要记住形式 返回值 (*指针变量名)(形參类型): 比方,下面4个函数 void func1(void) { } int func2(void) {

Python 学习第十九天 django知识

一,django 知识总结 1,同一个name属性的标签,多个值获取 <form action="/login/" method="POST" enctype="multipart/form-data"> <p> <input type="text" name="user" placeholder="用户名" /> </p> <p&g

[SQL] SQL 基础知识梳理(一)- 数据库与 SQL

SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 序 目录 What's 数据库 数据库结构 SQL 概要 创建表 删除和更新表 1-1 What's 数据库 1.数据库(Database,DB):将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合.如:大型-银行存储的信息,小型-电话簿. 2.数据库管理系统(Batabase Management Syste

JavaScript基础知识梳理--数组

JavaScript基础知识梳理--数组 1.创建方法 空数组:var obj=new Array(); 指定长度数组: var obj=new Array( size ); 指定元素数组 :  var obj=new Array( 元素1,元素2,....): 单位数组:var obj=new Array[ 元素1,元素2,元素3,...,元素N]; 多维数组:var a=new Array( [数组1],[数组2],[数组3],...,[数组N] ); 2.基本操作 存取数组元素: 单维数组

Java基础知识梳理《一》

一.Java数据类型(简单称之为“四类八种”) java 基本的数据类型长度都是固定的,好处是在实现跨平台时就统一了. 1.整型 byte short int long (分别是1,2,4,8个字节) 类型 存储需求 位数 取值范围 byte 1字节 8位 -128~127 short 2字节 16位 -2^15 ~2^15-1 int 4字节 32位 -2^31~2^31-1 long 8字节 64位 -2^63~2^63-1 当超出int表示范围时,应该使用long型,添加后缀一大写的L 注

struts2 知识梳理

一:struts.xml配置详解: 1.<include> 表示引入其他配置文件 2.<constant> 定义常量 3.<package>:  属性 是否必需 描述name 是 包名,作为其它包应用本包的标记extends 否 设置本包继承其它包namespace 否 设置包的命名空间,会改变url,abstact 否 设置为抽象包 4<action>和<result> <action>有name,class,method,conv

指针知识梳理6-const与指针

const 定义的变量为只读变量,在语法层面上通过这个变量去修改内存是不允许的. 但是对于以下代码,就有很多人绕了: const int  *p1;  //p1能变,*p1不能变 int const  *p2;  //p2能变,*p2不能变 int *const  p3;  //p3不能变,*p2能变 我们通过代码来验证说明这三种写法: </pre><p></p><pre> #include <stdio.h> int main() { int

[SQL] SQL 基础知识梳理(四) - 数据更新

SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 目录 一.插入数据 1.INSERT 语句的基本语法 --语法: --INSERT INTO <表名>(列1, 列2, ...) VALUES (值1, 值2, ...) INSERT INTO dbo.Shohin ( shohin_id , shohin_mei , shohin_bunrui , hanbai_tanka , s

[C#] C# 6.0 的知识梳理(整理中)

C# 6.0 的知识梳理 序 目前最新的版本是 C# 7.0,VS 的最新版本为 Visual Studio 2017 RC,两者都尚未进入正式阶段.C# 6.0 虽说出了一段时间,但是似乎有许多园友对这一块知识并不了解,如拼接字符串的 $ 符号,在此,小人献上拙作一篇<C# 6.0 的知识梳理>,祝大家在新的一年里:年年有今日,岁岁有今朝,月月涨工资,周周中彩票,天天好心情,日日好运道,白天遇财神,夜晚数钞票. 好了,废话不多说,我们先来回顾一下 C# 的版本史.后续我会对带 0 的版本号进