django——模板层模板语法-变量,标签,自定义标签,自定义过滤器,模板继承。

本文详细介绍了Django模板的使用,包括变量的深度查询和过滤器如default、length、filesizeformat等,以及标签如for、if、with和csrf_token的使用。同时,讲解了自定义标签和过滤器的创建,以及模板继承的概念,强调了解决代码重复的模板继承机制和block的使用规则。
摘要由CSDN通过智能技术生成


模板语法只有两种,变量用 { { }},标签用{% %}。

变量

深度查询句点符

views文件

from django.shortcuts import render,HttpResponse


def index(request):
    '''
    模板语法只有两个:

    变量: {
  {}}
         1 深度查询   句点符
         2 过滤器

    标签: {% %}

    '''
    name="yuan"
    i=1
    l=[111,222,333]
    info={"name":"yuan","age":22}
    b=True

    class Person(object):

        def __init__(self,name,age):
            self.name=name
            self.age=age

    alex=Person("alex",35)
    egon=Person("egon",33)

    person_list=[alex,egon]
    # return render(request,"index.html",{"n":name}) # 不必写那么多键值对
    return render(request, "index.html", locals()) # 这个方法

index.html

    <p>{
  { n }}</p>
    <p>{
  { i }}</p>
    <p>{
  { info }}</p>
    <p>{
  { l }}</p>
    <p>{
  { alex }}</p>
    <p>{
  { person_list }}</p>
    <p>{
  { b }}</p>
    <hr>




    <h4>深度查询用句点符</h4>

    <p>{
  { l.1 }}</p>
    <p>{
  { info.name }}</p>
    <p>{
  { alex.name }}</p>
    <p>{
  { alex.age }}</p>
    <p>{
  { person_list.1.age }}</p>

过滤器

语法:

{
  {obj|filter__name:param}}

default

如果一个变量是false或者为空,使用给定的默认值。否则,使用变量的值。例如:

{
  { value|default:"nothing" }}

length

返回值的长度。它对字符串和列表都起作用。例如:

{
  { value|length }}

filesizeformat

将值格式化为一个 “人类可读的” 文件尺寸 (例如 ‘13 KB’, ‘4.1 MB’, ‘102 bytes’, 等等)

{
  { value|filesizeformat }}

如果 value 是 123456789,输出将会是 117.7 MB。

date

如果 value=datetime.datetime.now(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值