美文网首页
django标签及路由——模板使用

django标签及路由——模板使用

作者: 人心难测唯真心不负 | 来源:发表于2018-10-24 09:47 被阅读0次

一、模型或表有问题时

- 删除数据库
- 删除迁移目录
- 创建数据库
- 执行生成迁移文件以及目录
    python manage.py makemigrations 应用名
- 执行迁移
    python manage.py migrate

二、模板

  • 组成

    - 网页代码(HTML/CSS/JS)
    - 动态插入数据(逻辑处理,数据渲染,数据填充...)
    
  • 作用

    快速生成HTML
    
  • 步骤

    - 加载
    - 渲染
    

三、模板使用

  • 变量

    从视图函数中 -> 模板  -> 显示
    
    使用:
        {{ var }}
        {{ 变量 }}
    

    变量不存在,则插入空的字符串

  • 标签

    逻辑处理.
    
    使用:
        {% tag %}
    
  • 标签if

    if 条件:
        pass
    else:
        pass
    
    {% if 条件 %}
        代码区块
    {% endif %}
    
    {% if 条件 %}
        代码区块1
    {% else %}
        代码区块2
    {% endif %}
    
    {% if 条件 %}
        代码区块1
    {% elif 条件 %}
        代码区块2
    ...
    {% else %}
        代码区块N
    {% endif %}
    
  • 标签for

    {% for 变量 in 列表 %}
        代码区域
    {% endfor %}
    
    # 循环的当前次数(从1开始)
    {{ forloop.counter }}
    
    # 循环的当前次数(从0开始)
    {{ forloop.counter0 }}
    
    {{ forloop.revcounter }}
    {{ forloop.revcounter0 }}
    
  • 单行注释

    {# 注释内容 #}
    

    模板中的注释,如果HTML注释 ``

  • 多行注释

    {% comment %}
        注释区块
    {% endcomment %}
    
  • 过滤器
    # 在变量显示之前修改它
    {{ var|过滤器 }}
    
    - lower 小写
    - upper 大写
    - join 拼接
    - default 默认值
    
  • 标签include
    # 加载模板(带参数渲染)
    {% include '模板位置' with 参数1 参数2 参数3... %}
    
    {% include 'index_footer.html' with user='zyz' namelist=names %}
    

四、反向解析

  • 基本语法
    {% url 'namespace:name' p1 p2.... %}
    name: url添加一个别名(不同应用中,可能会出现重名)
    namespace: 命名空间;
    a: test01
    b: test01
<a href="{% url 'qf:test04' %}"> 第四页 </a>


# url(r'^grade/(\d+)/(\d+)/(\d+)/', views.grade, name='grade')
# def grade(request, a, b, c):
<a href="{% url 'qf:grade' 10 11 3 %}"> 你知道我是哪个班? </a>

五、模板继承

  • 作用
    提高页面的代码复用(抽取共有部分,作为基类);

  • block标签

    - 挖坑和填坑过程
    - 语法
        # 挖坑
        {% block 标签名(坑的名字) %}
        {% endblock 标签名 %}
    
    
        # 填坑
        {% block 标签名 %}
            代码
        {% endblock 标签名 %}
    
  • extends标签
    {% extends 'base.html' %}
    

六、HTML转义

return render(request, 'cart.html', context={'code':'<h1> 购物车 </h1>'})

# 默认会转义: 当前普通字符串
    {{ code }}

# 方式一: 过滤
    {{ code|safe }}

# 方式二: 关闭自动转义
    {% autoescape off %}
        {{ code }}
    {% endautoescape %}

作业: 班级和学生(一对多)

## 添加班级
## 添加学生
## 显示班级
##   班级可以点击,点击班级显示对应的学生信息
## 显示学生

相关文章

  • django标签及路由——模板使用

    一、模型或表有问题时 二、模板 组成- 网页代码(HTML/CSS/JS)- 动态插入数据(逻辑处理,数据渲染,数...

  • Django handy notes

    Django Handy Notes 如何关闭Django模板的自动转义 Django的模板中会对HTML标签和J...

  • Django模板语言注释

    Django在HTML里面书写的模板语言不能使用这种方法注释,这样注释实际依然有效 第一种使用模板标签{% com...

  • 模板代码中的国际化

    Django模板中的翻译使用了两个模板标签,与Python代码中的语法略有不同。 为了让您的模板可以访问这些代码,...

  • 1、django介绍

    Django框架 Django 的功能是最完整的,Django 定义了服务发布、路由映射、模板编程、数据处理的一整...

  • Django模板标签

    知识点: 基本概念 常用标签 模板标签例子 模板继承与应用 注释标签 模板文件路径设置 模板标签 标签在渲染的过程...

  • Django模板标签

    这里只讨论Django的常用标签,以及模板的继承与引用。 Django的常用标签: 标签在渲染的过程中提供任意的逻...

  • Django 二

    目录 1.Django模板冲突问题 2.Django路由分发 3.有名分组和无名分组 4.Django创建app流...

  • Django学习(7)-模板进阶

    学习Django模板中的循环,条件判断,常用的标签,过滤器的使用。 列表,字典,类的实例的使用 循环: 迭代显示列...

  • django模板进阶

    本节主要讲Django模板中的循环、条件判断、常用标签、过滤器的使用。1、列表、字典、类的实例的使用2、循环:迭代...

网友评论

      本文标题:django标签及路由——模板使用

      本文链接:https://www.haomeiwen.com/subject/felttqtx.html