zoukankan      html  css  js  c++  java
  • Django模板导入及母版继承和自定义返回Html片段

    1.ROOT_URLCONF = '总路由所在路径(比如untitled.urls)'<===默认情况是这样

    根路由的路径是可以修改的:ROOT_URLCONF = app01.urls<===根路由写在app01下面

    2.静态文件引入的三种方式

    1 一:
    2 <link rel="stylesheet" href="/static/dd/ssmycss.css">
    3 二:
    4 {% load static %}
    5 <link rel="stylesheet" href="{% static 'dd/ss/mycss.css' %}">
    6 {# 返回值:/static/dd/ss/mycss.css#}
    7 三:
    8 <link rel="stylesheet" href="{% get_static_prefix %}dd/ss/mycss.css">

    3.模板导入===就是这么简单

    把公共的部分,放在一个新建的模板中,比如index.html。

    想在哪里用公共的部分,直接{%include  ‘index.html’%}<===标签

    母版继承 === 这个才是个小重点

    母版的样式是固定的,所以继承过来的盒子不论在前还是在后,位置都是不变的。

     1 1  写一个母版 base.html  ===母版
     2         2 要更改的地方(    )
     3         {% block base %}  base是母版的盒子名称
     4             母版的盒子里也可以写东西
     5         {% endblock %}
     6         3 调用:
     7             3.1 必须写在第一行 {%extends 'base.html' %}
     8             3.2         {% block base %}
     9             
    10                         自己的东西
    11                         
    12                         {% endblock my_head%}  这儿加my_head是为了更清晰的看到结束条件。
    13             3.3 还想用母版里的内容({{block.super}} 放在那,原来母版里的东西,就会渲染在哪)
    14                     {% block base %}
    15                         {{block.super}}
    16                         自己的东西                        
    17                     {% endblock my_head%}
    18             3.4 如过不继承盒子,它会用原来的内容,如果继承了,没写自己的东西,它会空白,替换了原来的盒子。
    19             3.5 盒子在继承时,跟顺序无关

    自定义返回Html片段步骤

     1 自定义 inclusion_tag
     2     1 先去setting里面把app名字配置上
     3     2 再app目录下创建一个templatetags模块
     4     3 写py文件(my_test.py)
     5     4 from django import template
     6     5 register=template.Library()
     7     6 @register.inclusion_tag('test.html')
     8         def my_inclusion(n):
     9             data=[]
    10             for i in range(n):
    11                 data.append('第%s行'%i)
    12             return {'data':data}
    13     7 写test.html页面
    14                 <ul>
    15                   {% for choice in data %}
    16                     <li>{{ choice }}</li>
    17                   {% endfor %}
    18 
    19                 </ul>
    20     8 {% load my_test %}
    21     9 {% my_inclusion 10 %}   它会返回html的页面
    22     
  • 相关阅读:
    wait
    iOS UITableviewCell优化
    iOS本地版本和服务器对比
    iOS 二维码生成 改变颜色 添加中心图
    iOS坑点解析
    iOS View快照,View截屏
    双缓冲读感感悟
    查找附近点--Geohash方案讨论
    各种报告word模板
    跳转到设置里面各个页面iOS8
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/9605495.html
Copyright © 2011-2022 走看看