Django模板系统

模板系统

1常用符号
如果在模板中需要解析变量使用{{}}.
如果在模板中进行逻辑相关操作使用{%%}
注释 {# … #},单行注释。
1)变量
在Django的模板系统中变量使用的语法:{{ 变量名 }}。
当模版引擎遇到变量,就会用值替换掉变量。
变量的命名可以是字母数字以及下划线 ("_")的组合。
变量名称中不能有空格或标点符号。
例:将代码中的name带换成粉刷将

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>你姑拉丝赵四</title>
</head>
<body>
<h1>我是一个{{name}}</h1>
</body>
</html>

先定义一个函数:

from django.shortcuts import HttpResponse,render
import os
import datetime
def songda(request):
    return render(request,'songda1.html',{'name':'粉刷将'})

再将‘’粉刷将‘’传输到网页

from django.contrib import admin
from django.urls import path
from lianxi import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('songda/',views.songda)
]

内置函数locals()
locals可以将一串已经赋值的变量整合成为一个字典;

def sonda3(request):
    name='粉刷将'
    age=5
    height=60
    locals()
    return render(request,'songda2.html',locals())

2).点(.)的特殊含义
点(.)在模板语言中有特殊的含义。当模版系统遇到点("."),它将以以下顺序查询:
字典查询 :如果向页面传递的是一个字典类型变量,变量名.key 获取值
属性或方法查询:如果传递一个对象,变量名.变量名
(此变量名有可能是属性,有可能是无参数方法名称)。
数字索引查询:如果传递一个列表,变量名.索引。

def index02(request):
    """传递字典参数"""
    data = {'name': '雷老五'}
    return render(request, 'index02.html', {'data': data})


class Person(object):
    def __init__(self, name):
        self.name = name

    def dream(self):
        return "{}的梦想是做一名老师".format(self.name)


def index03(request):
    """传递对象"""
    person = Person('张三')
    return render(request, 'index02.html', {'person': person})


def index04(request):
    """传递列表"""
    lst = ['zs', 'ls', 'ww']
    return render(request, 'index02.html', {'lst': lst})

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值