博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django--模版层
阅读量:4451 次
发布时间:2019-06-07

本文共 1942 字,大约阅读时间需要 6 分钟。

模版层(templates):

  后端朝前端进行传递数据的方式:  

def index(request):    # 第一种    n = 6969    # return render(request, 'index.html', {'n': n})    # 第二种    return render(request, 'index.html', locals())  # 将当前所在的名称空间中的名字全部传递给前端页面

 

    后端传函数名到前端,会自动加括号调用,但是不支持传参,

    后端传对象到前端,就相当于打印了这个对象

    前端获取后端传过来的容器类型的内部元素,统一采用句点符,数字对应的就是数据的索引

{

{ t.1 }}

 

    模版语法的注释不会展示到前端页面:{#注释的内容#}

    会展示到前端页面的注释:<!--我是原生的html注释-->

    调用python自带的方法,可以调用不需要传参的一些内置方法,

  过滤器: 

    <p>前端统计字符串的长度:{

{ t|length }}</p>

    <p>前端获取数据如果就返回default后面的值如果有值就返回{

{ t|default:"这是个空!!!" }}</p>

    <p>将数字格式化成标识文件大小的单位{

{ t|filesizeformat}}</p>

 

    <p>格式化时间不需要加百分号{

{ t|date:'Y-m-d'}}</p>

    <p>字符串切片{

{ t|slice:"0:8"}}</p>

    <p>截取固定长度的字符串 三个点也算{

{ t|truncatechars:'10' }}</p>

    <p>将字符串中的内容渲染成标签形式的内容,取消转义{

{ t|safe}}</p>

  标签:

    前后端取消转义:

      前端:

        |safe

      后端:

from django.utils.safestring import mark_safexxx = mark_safe('

index

')

 

    

{% for foo in t %}     {
% if forloop.first %}

这个是第一次

{
% elif forloop.last %}

这个是最后一次

{
% else %}

这个只是中间的值!!!

{
% endif %} {
% empty %}

我压根就没有接收到数据啊!!!

{
% endfor %}

    

 

 

    empty:当你的for循环对象为空的时候会自动走empty代码块中的内容

  自定义标签、过滤器,inclusion_tag:

    必须干的三件事:

      1、必须在应用名下新建一个名字,就叫tempalte(必须叫这个名字)

      2、在该新建的文件夹内部新建一个任意名称的py文件

      3、在该py文件中需要固定写下面两句代码:

         from django import template

         register = template.Library()

    自定义标签:

      

  模版的继承与导入:

    首先需要在被继承的模版中划分多个区域

    {% block 给区域起的别名 %}     {% endblock %}     通常一个模版中至少有三块content、css、js

    子版继承模版:

      现继承模版的所有内容

      {% extends 'home.html' %}

      然后根据block的名字修改指定区域的内容

        {% block content %}             
        

username

        

password

      
        
        {% endblock %}     模版的导入:       将一段html代码以模块的方式导入到另一个html展示       
      {% include '想导入的一段html文件'%}     

 

转载于:https://www.cnblogs.com/tulintao/p/11426710.html

你可能感兴趣的文章
六时车主 App 隐私政策
查看>>
C语言常见问题 如何用Visual Studio编写C语言程序测试
查看>>
Web用户的身份验证及WebApi权限验证流程的设计和实现
查看>>
hdu 2098 分拆素数和
查看>>
[ONTAK2010]Peaks kruskal重构树,主席树
查看>>
ECMAScript6-let与const命令详解
查看>>
iOS 使用系统相机、相册显示中文
查看>>
什么是敏捷设计
查看>>
SCSS的基本操作
查看>>
"安装程序无法定位现有系统分区" 问题解决
查看>>
.NET中栈和堆的比较
查看>>
【莫队】bzoj 3781,bzoj 2038,bzoj 3289
查看>>
如何优化limit
查看>>
几种常用数据库字段类型查询语句
查看>>
字符全排列
查看>>
提高效率必须改掉的7种习惯
查看>>
Java判断语句中判断条件的执行顺序
查看>>
Windows平台下tomcat+java的web程序持续占cpu问题调试
查看>>
OO第四次博客作业!
查看>>
HDU 吉哥系列故事——完美队形II 騰訊馬拉松初賽第二輪D題
查看>>