默认值:
url(r'index/', views.index,{'name':"root"})
def index(request,name):
    print(name)
    return HttpResponse('ok')

命名空间:
/a/   include('app01.urls',namespace='m1')
/b/   include('app01.urls',namespace='mm1')

app01.urls
/index/  name='n1'

reverse('m1:n1')-->对应url /a/index/

命名空间补充:
from django.conf.urls import url,include
urlpatterns = [
    url(r'^a/', include('app01.urls', namespace='author-polls')),
    url(r'^b/', include('app01.urls', namespace='publisher-polls')),
]

app01.urls.py
from django.conf.urls import url
from app01 import views
app_name = 'app01'
urlpatterns = [
    url(r'^(?P<pk>\d+)/$', views.detail, name='detail')
]

app01.views.py
def detail(request, pk):
    print(request.resolver_match)
    return HttpResponse(pk)

以上定义带命名空间的url之后,使用name生成URL时候,应该如下:
v = reverse('author-polls:detail', kwargs={'pk':11})
{% url 'author-polls:detail' pk=12 pp=99 %}

自定义函数
    simple_tag
    1 app下创建templatetags目录
    2 任意py文件 xxoo.py

    3 创建template对象,register

      from django import template
      from django.utils.safestring import  mark_safe

      register=template.Library()

    4.
      @register.simple_tag
      def hou(a1,a2):
        return a1+a2

    5. settings注册app

    6.顶部{%load xxoo %}

    7.使用   {% 函数名 arg1 arg2 %}  参数任意传
            {% hou 2 9 %}

    缺点:不能作为if条件
    有点:参数任意

    filter
    1 app下创建templatetags目录
    2 任意py文件 xxoo.py

    3 创建template对象,register

      from django import template
      from django.utils.safestring import  mark_safe

      register=template.Library()

    4.
      @register.filter
      def hou(a1,a2):
        return a1+a2

    5. settings注册app

    6.顶部{%load xxoo %}

    7.使用   {{ "参数一"|函数名:"参数二,参数三" }} 或 {{ "参数一"|函数名:数字 }}  参数任意传
            {{ "maliya" | jz:"LSS" }}

    缺点:参数最多两个,不能加空格
    优点:能作为if条件

分页(自定义分页):
    xss:
        前端:{{page_str|safe}}

        后台:mark_safe(page_str)

cookie
key,              键
value='',         值
max_age=None,     超时时间
expires=None,     超时时间(IE requires expires, so set it if hasn't been already.)
path='/',         Cookie生效的路径,/ 表示根路径,特殊的:跟路径的cookie可以被任何url的页面访问
domain=None,      Cookie生效的域名
secure=False,     https传输
httponly=False    只能http协议传输,无法被JavaScript获取(不是绝对,底层抓包可以获取到也可以被覆盖)

auth装饰器
def auth(func):
    def inner(request,*args,**kwargs):
        v=request.COOKIES.get('username111')
        if not v:
            return redirect('/login/')
        return  func(request,*args,**kwargs)
    return inner

FBV装饰
@auth
def index(request):
    #获取当前已经登录的用户
    v=request.COOKIES.get('username111')
    return render(request,'index.html',{'current_user':v})

CBV装饰
from django import views
from django.utils.decorators import method_decorator
@method_decorator(auth,name='dispatch')
class Order(views.View):
    # @method_decorator(auth)
    # def dispatch(self, request, *args, **kwargs):
    #     return super(Order,self).dispatch(request,*args,**kwargs)

    @method_decorator(auth)
    def get(self,request):
        v = request.COOKIES.get('username111')
        return render(request, 'index.html', {'current_user': v})

    def post(self,request):
        v = request.COOKIES.get('username111')
        return render(request, 'index.html', {'current_user': v})

模板导入_分页_cookie_装饰器_笔记的更多相关文章

  1. OpenGL立方体在世界坐标系中_缩放_旋转_平移_顶点片源着色器_光照作用_棋盘纹理贴图

    读取bmp等图片格式中的像素还有难度,就先用这个棋盘图象素来弄了 代码打错一个就一直First-chance exception ,貌似还有一个要用q或者Q才能成功退出,不知道缺少哪句,我用窗口红叉退 ...

  2. Python_oldboy_自动化运维之路_函数,装饰器,模块,包(六)

    本节内容 上节内容回顾(函数) 装饰器 模块 包 1.上节内容回顾(函数) 函数 1.为什么要用函数? 使用函数之模块化程序设计,定义一个函数就相当于定义了一个工具,需要用的话直接拿过来调用.不使用模 ...

  3. python_装饰器_语法糖

    什么是高阶函数? -- 把函数名当做参数传给另外一个函数,在另外一个函数中通过参数调用执行 #!/usr/bin/python3 __author__ = 'beimenchuixue' __blog ...

  4. python3.5-day5_迭代器_生成器_装饰器_模块

    笔者QQ 360212316 迭代器&生成器 生成器: 一个函数调用返回一个迭代器,那这个函数叫做生成器,如果函数中包含yield语法,那么这个函数就会变成生成器 生成器的特点: 1.生成器必 ...

  5. Python笔记_第四篇_高阶编程_再议装饰器和再议内置函数

    1. 概述: 我们在前面用了很多的装饰器这个工具的方法.这个位置要系统的讲一下装饰器. 1.2 为什么需要装饰器. 装饰器本质是一个Python函数,它可以让其他函数在不需要任何代码变动的前提下增加额 ...

  6. Python-老男孩-02_装饰器_面向对象_封装_继承_异常_接口_数据库

    装饰器其实也是一个函数,它的参数是一个函数 ; 其它函数与装饰器之间建立联系是通过 @装饰器函数名, 感觉有点像Spring的面向切面编程 装饰器函数,如何处理原函数的参数.?  装饰器 原函数返回值 ...

  7. Django(4)html模板继承、模板导入、分页实现

    1.获取所有请求信息 导入模块:from django.core.handlers.wsgi import WSGIRequest request.environ:包含所有的请求信息,可以打印看一下, ...

  8. django基础 -- 4. 模板语言 过滤器 模板继承 FBV 和CBV 装饰器 组件

    一.语法 两种特殊符号(语法): {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 二.变量 1. 可直接用  {{ 变量名 }} (可调用字符串, 数字 ,列表,字典,对象等) ...

  9. 潭州课堂25班:Ph201805201 第十二课 new方法,定制属性访问,描述符与装饰器 (课堂笔记)

    1,new方法: 类每次实例化时都会创建一个新的对象, class Textcls: # cls 是指类本身, def __new__(cls, *args, **kwargs): # 在 __ini ...

  10. python装饰器学习笔记

    定义:本质上就是个函数,(装饰器其他函数)就是为了给其他函数添加附加功能 原则:1.不能修改被装饰的函数的源代码 2.不能修改被装饰的函数的调用方式 #-*-coding:utf-8-*- 1 imp ...

随机推荐

  1. ATT&CK实战系列(一)

    环境下载 下载靶场环境,并导入虚拟机分别是win2003.win7.winserver2008 配置网络 虚拟机--编辑--虚拟机网络编辑器--添加网络VMnet2--仅主机模式分配的地址是192.1 ...

  2. 解密注意力机制:为什么Flash Attention这么屌?

    背景回顾:什么是大语言模型(LLM)? 在进入注意力机制的细节之前,我们先了解一下什么是大语言模型(LLM).简单来说,LLM是一种通过深度学习技术训练的大规模神经网络模型,用于处理和生成自然语言.L ...

  3. python 二级 基本数据类型

    1.思维导图 需要特殊记忆知识点 -1.01E-3值为 0.00101 基本运算一共9个: 取整 a//b 取余数 a%b x的y次幂 :x**y 数值运算函数 format 格式的控制 常用的操作 ...

  4. 【主流技术】Spring Boot Starter 的应用场景与自动配置

    目录 前言 一.Spring Boo Starter 简介 二.如何自定义 Starter 2.1命名规范 2.2整体结构 2.3模块开发 2.3.1依赖引入 2.3.2xxxAutoConfigur ...

  5. 【Bug记录】[@vue/compiler-sfc] `defineProps` is a compiler macro and no longer needs to be imported.

    [Bug记录][@vue/compiler-sfc] defineProps is a compiler macro and no longer needs to be imported. Vue3项 ...

  6. AI与.NET技术实操系列(八):使用Catalyst进行自然语言处理

    引言 自然语言处理(Natural Language Processing, NLP)是人工智能领域中最具活力和潜力的分支之一.从智能客服到机器翻译,再到语音识别,NLP技术正以其强大的功能改变着我们 ...

  7. BUUCTF---达芬奇的密码

    题目 达芬奇隐藏在蒙娜丽莎中的数字列:1 233 3 2584 1346269 144 5 196418 21 1597 610 377 10946 89 514229 987 8 55 6765 2 ...

  8. English interview - three interesting questions of algorithm analysis (英语面试- 三道有趣的算法分析题目)

    Background introduction Here are some problems related to Big-O notation. From now on, I will try to ...

  9. Ollama本地部署大模型总结

    日拱一卒,功不唐捐 今天计划对之前ollama系列做个回顾,从如何部署到API使用,整理到一篇内容中,提供给大家参考. 安装指南 第一步:安装ollama 我们可以从官网下载ollama,此步骤支持w ...

  10. CSS文本超出省略

    语法: text-overflow:clip|ellipsis|"任意字符" <!DOCTYPE html> <html> <head> < ...