1 模版导入-->模板复用
  1 写一个模板
  2 在另一个模板中导入:{% include '模板.html'%}

2 模板的继承(相当于__init__)
  1 写一个母版,留一个可扩展的区域(盒子),可以留多个盒子(留的越多,可扩展性越高)
   {%block 名字%}
    可以写内容
   {%endblock%}

<body>
<div class="head"></div>
<div class="container-fluid">
<div class="row">
<div class="col-md-3">
{% include 'left.html' %}
</div>
<div class="col-md-9">
{% block c1 %}
<p>wwww</p>
{% endblock c1 %}
</div>
</div>
</div>
</body>

2 在子模板中使用:
   {% extend '母版.html'%}
   {%block 名字%}
   {{block.super}} #可继承母版盒子的内容

{{block.super}} #可继承母版盒子的内容
    子模板的内容
   {%endblock 名字%}

{% extends '1.html' %}{# 继承 #}
{# {{ block.super }} {# 无效 #}
{#123321312312412412512 {# 无效 #}
{% block c1 %} {# 相当于子类定义__init__ ,没定义用父类的,定义了用自己的 #}
{{ block.super }}
{{ block.super }}
<p>呵呵</p>
<p>呵呵</p>
{% endblock c1 %}

3 静态文件相关
  1 写死静态文件:<link rel="stylesheet" href="/static/css/mycss.css">
  2 使用 static标签函数:
   -{%load static%}  #load是static.py文件
   #static返回值,会拼上传参的路径
   -{% static "css/mycss.css"%}
  3 使用get_static_prefix 标签
   -{%load static%}
   #get_static_prefix返回值是:静态文件的地址,相当于/static/
   -{% get_static_prefix %}css/mycss.css

   <link rel="stylesheet" href="/static/css/bootstrap.css">
{# {% load static %} {# static动态获取方式1 #}
{# <link rel="stylesheet" href="{% static 'css/bootstrap.css' %}">#}
{# {% load static %}{# 方式2 #}
{# <link rel="stylesheet" href="{% get_static_prefix %}css/bootstrap.css">#}

 
 4 单表操作:注(1.分清QuerySet对象&个体对象&值  它们的方法2.QuerySet对象.query可以查看sql语句)
  回顾:
    注:创建orm对象映射关系
   1.settings配置数据库
   2.import pymysql
     # 因为django默认链接mysql数据库,用的是MySQLdb模块,python3.0以后,不支持MySQLdb,需要用pymysql替换MySQLdb
     pymysql.install_as_MySQLdb()
   3.models 创建表
   4.-数据迁移命令:
   -python3 manage.py makemigrations   --->只是对变化做一个记录,记录文件在app的migrations
   -python3 manage.py migrate   ---->把更改提交到数据库
   -python3 manage.py showmigrations  ---->查看那个没有提交到数据库
  
  -查询api
   <1> all():                  Q@查询所有结果         
   <2> filter(**kwargs):       Q@它包含了与所给筛选条件相匹配的对象   
   <3> get(**kwargs):          个@如果符合筛选条件的对象超过一个或者没有都会抛出错误。
   <4> exclude(**kwargs):      Q@除开 
   <5> order_by(*field):       Q@排序 ('-id')降序  
   <6> reverse():              Q@对查询结果反向排序    
   <8> count():                值@返回数据库中匹配查询(QuerySet)的对象数量。  
   <9> first():                个@返回第一条记录  
   <10> last():                个@返回最后一条记录   
   <11> exists():              值@如果QuerySet包含数据,就返回True,否则返回False 
   <12> values(*field):        Q@返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一系列
          model的实例化对象,而是一个可迭代的字典序列
   <13> values_list(*field):   Q@它与values()非常相似,它返回的是一个元组序列,values返回的是一个字典序列   
   <14> distinct():            Q@去重
   
  -基于双下划线的模糊查询
   Book.objects.filter(price__in=[100,200,300])
   Book.objects.filter(price__gt=100)
   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)

随机推荐

  1. idea使用maven打包项目

    第一步:打开maven Projects 第二步.找到package 第三步,运行.到路径下面去找打包的文件吧. 第二种方法: 使用命令 cmd进入项目目录,例如项目在D盘项目名poject 输入: ...

  2. Gerrit的安装和使用说明

    Gerrit安装和使用说明 搞了几天,资料也查了不少,终于磨出来了.有什么不对的地方,大家及时提出来...,开始吧 系统 Centos6.5 x64 内存 2G 硬盘 20G 数据库 Mysql5.1 ...

  3. hdu 6441 (费马大定理+勾股数 数学)

    题意是给定 n 和 a,问是否存在正整数 b,c 满足:a^n + b^n == c^n.输出 b  c,若不存在满足条件的 b,c,输出 -1 -1. 当 n > 2 时,由费马大定理,不存在 ...

  4. vue filter过滤器简单应用

    vue中过滤器,用于一些常见的文本格式化,用 | 来操作. 过滤器可以用在两个地方: 1.在{{}}双花括号中插入值 2.v-bind表达式中使用 <!-- 在双花括号中 --> {{ m ...

  5. oldboy s21day02

    1.猜数字,设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了:如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确,然后退出循环.while 1: num ...

  6. GCC编译器原理(二)------编译原理一:ELF文件(1)

    二.ELF 文件介绍 2.1 可执行文件格式综述 相对于其它文件类型,可执行文件可能是一个操作系统中最重要的文件类型,因为它们是完成操作的真正执行者.可执行文件的大小.运行速度.资源占用情况以及可扩展 ...

  7. web api HttpResponseMessage的简单使用

    using Lemon.Common; using Lemon.WeChat.Model; using Lemon.WeChat.Services; using Newtonsoft.Json; us ...

  8. CMD之入门篇

    本博文最早是记录在本地电脑的,由于清理电脑的缘故,顺便将这篇笔记转移到公共博客,以便日后查阅和快速上手使用. 开门见山,步入正题,以下是Windows系统的常用CMD命令. 一 文件系统操作 0.[脚 ...

  9. 转载-HashMap1.7源码分析

    原文地址-https://www.cnblogs.com/chengxiao/p/6059914.html HashMap实现原理及源码分析   哈希表(hash table)也叫散列表,是一种非常重 ...

  10. 【译】第三篇 SQL Server安全主体和安全对象

    本篇文章是SQL Server安全系列的第三篇,详细内容请参考原文. 一般来说,你通过给主体分配对象的权限来实现SQL Server上的用户与对象的安全.在这一系列,你会学习在SQL Server实例 ...