Django学习笔记(3)

Django模板

快捷键

  • Control + d 复制一行,插入到下面
  • alt + shift + 上下 代码移动

标签

  • {% %} 标识符
  • 标签分为单标签和成对的标签
  • 成对的标签切记不可以省略,开始标签和结束标签

结构标签

  • block
    • 块,
    • 用来规划布局
    • 首次出现,代表规划
    • 第二次出现,代表填充以前的规划
    • 第三次出现,代表填充以前的规划,默认动作都是覆盖
      • 如果不想覆盖,可以添加{{block.super}}
      • 实现增量操作
  • extend
    • 继承
    • 可以获取父模板的所有结构
  • block + extend
    • 化整为零
  • include
    • 包含
    • 可以将页面作为一部份嵌入其他页面中
  • include + block
    • 由零聚一
  • 三个标签可以混合时候用

静态资源

  • 动静分离
  • 创建静态文件夹
  • 在settings中注册 STATICFILES_DIRS=[]
  • 在模板中使用
    • 先加载静态资源{% load static %}
    • 使用{% static ‘xxx’%} xxx相对路径
  • 坑点
    • 仅在debug中可以使用
    • 以后需要自己单独处理

urls

  • 路由器
    • 按照列表书写顺序进行匹配
    • 从上到下匹配,没有最优匹配
  • 路由规则编写
    • 通常直接指定以 ^ 开头,
    • 结尾处直接添加 /

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
在这里插入图片描述

  • 路由路径中的参数使用()进行获取
    • 一个圆括号对应视图函数中的一个参数
    • 参数
      • 路径参数
        • 位置参数
          • 按照书写顺序进行匹配
        • 关键字参数
          • 按照参数名称匹配
          • 和参数无关
      • 参数个数必须和视图函数中参数个数一致,除默认的request以外
  • 反向解析
    • 根据在跟路由中注册的namespace和在子路由中获取的name,这两个参数来动态获取路径
    • 在模板中使用 {% url ‘namespace:name’ %}
    • 如果带有位置参数 {% url ‘namespace:name’ value1 value2 … %}
    • 如果带有关键字参数 {% url ‘namespace:name’ key1=value1 key2=value2 … %}

错误页面定制

  • 在模板中重写错误状态码页面
  • 关闭 Debug
  • 实现原则
    • 就近原则

双R

  • Request
    • 内置属性
      • method
      • path
      • GET
        • 类字典结构
        • 一个key允许对应多个值
        • get
        • getlist
      • POST
      • META
        • 各种客户端元信息
        • REMOTE_ADDR 远程访问ip

知识点

  • locals
    • 内置函数
    • 将局部变量,使用字典方式进行打包
    • key是变量名,value是变量中的存储数据
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值