zoukankan      html  css  js  c++  java
  • 模板的导入和继承 单标操作

      一.模板的导入和继承

        如何引入静态文件(static目录的配置)

        模板的导入:

          1.写一个好看的模板

          2.在想用的地方

            {% include '好看的模板的名字.html' %}

        模板的继承

          写一个母版,base.html(留一些block(盒子)),留的盒子越多,可扩展性就越高

            {% block top %}

            {% endblock %}

          使用:

            在一个新的html中

              {% extend 'base.html' %}

              扩写留的对应的盒子

                {% block top %}

                  扩写的内容

                {% endblock %}

          注意:

            1.扩写的时候,盒子的位置无所谓,只要名字对应正确,就会正确填充

            2.盒子可以不扩写,不写就是原来的样子

            3.如果要显示母版盒子中原来的东西,需要

              {{block,super}}----写在哪,原来的内容就放在哪

        4.静态文件相关

          1.直接写死的:<link rel = "stylesheet" href="/static/bootstrap-3.3.7-dist/css/bootstrap.css">

          2.用static标签:

            {% load static %}

            <link rel = "stylesheet" href = "{% static 'bootstrap-3.3.7-dist/css/bootstrap.css' %}">

          3.用get_static_prefix:

            {% load static %}

            <link rel = "stylesheet" href="{% 用get_static_prefix %}bootstrap-3,3,7-dist/css/bootstrap.css">

        5.inclusion_tag:返回html片段

          1.前面几步跟标签和过滤器一样

          2.装饰器: @register.inclusion_tag('inclusiontag.html',name='lqz'),第一个参数是要操作的模板

          3.返回一个字典,字典中的值,可以在inclusiontag中使用

        6.模型层:

          单表操作:

            增加,删,改:两种方式:queryset对象的方法,book对象的方法

            改:需要用save()

            get()方法:查询的数据有且只有一条,如果多,少,都抛异常

          单表查询

            <1> all():  查询所有结果

            <2> filter(**kwargs):   它包含了与所给筛选条件相匹配的对象

            <3>get(**kwargs):      返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误.

            <4>exclude(**kwargs):  它包含了与所给筛选条件不匹配的对象

            <5>order_by(*field):  对查询结果排序('-id')

            <6>reverse():  对查询结果反向排序  

            <7>count():  返回数据库中匹配查询(QuerySet)的对象数量

            <8>first():  返回第一条记录

            <9>last():  返回最后一条记录

            <10>exists():  如果QuerySet包含数据,就返回True,否则返回False

            <11>values(*field):  返回一个ValueQuerySet--一个特殊的QuerySet,运行后得到的并不是系列model的实例化对象,而是一个可迭代的字典序列

            <12>values_list(*field):  它与values()非常相似,它返回的是一个元祖序列,values返回的是一个字典序列

            <13>distinct():  从返回结果中剔除重复记录

          单表基于双下划线的模糊查询

            Book.objects.filter(price_in=[100,200,300])

            Book.objects.filter(price__gt100)

            Book.objects.filter(price__lt=100)

            Book.objects.filter(price__gte=100)
            Book.objects.filter(price__lte=100)
            Book.objects.filter(price__range=[100,200])
            Book.objects.filter(title__contains="python")
            Book.objects.filter(title__icontains="python")
            Book.objects.filter(title__startswith="py")
            Book.objects.filter(pub_date__year=2012)

  • 相关阅读:
    学习进度条
    学习进度条
    《软件需求模式》读书笔记04
    大型网站技术架构阅读笔记5
    大型网站技术架构阅读笔记4
    大型网站技术架构阅读笔记3
    大型网站技术架构阅读笔记2
    大型网站技术架构阅读笔记1
    《uml大战需求分析》阅读笔记06
    《uml大战需求分析》阅读笔记05
  • 原文地址:https://www.cnblogs.com/xiaocaiyang/p/10257472.html
Copyright © 2011-2022 走看看