lxinghua

博客园 首页 新随笔 联系 订阅 管理
  117 随笔 :: 0 文章 :: 0 评论 :: 7553 阅读

一、模版路径总结

在配置文件setting.py文件中找到TEMPLATES进行文件路径配置:

1. DIRS定义一个目录列表,模板引擎按流标顺序搜索这些目录以查询模板源文件。将templates放在主项目目录下:

2. APP_DIRS告诉模板引擎是否应该进入每个已安装的应用中查找模板,值为True则模板会去安装了的app下面的templates文件夹查找模板。所以我们也可以在每个app的狸猫创建模板目录templates存放模版,这种方式需要将这个app添加到setting.py文件的INSTALLED_APPS列表中。

二、模版变量

1. 语法: {{ 变量名 }}

2. 命名由字母和数字以及下划线组成,不能有空格和标点符号

3. 可以使用字典、模型、方法、函数、列表

4. 不要和python或django关键字重名

5. 变量和查找

注:

1. 如果data是一个字典,那么访问data.items将会访问data这个字典的key名的items的值,而不会访问字典的items方法;

2. 点在模板渲染时有特殊的含义。变量名中点表示查找。

app book/views.py文件

复制代码
def hello():
    return 'django'

class Fruits:
    def __init__(self, name, color):
        self.name = name
        self.color = color
    def say(self):
        return 'HAHAHAHA'

ap = Fruits('apple', 'red')
ls = ['x', 'y', 'z']
dc = {'a': 1, 'b': 2}

from django.shortcuts import render
def index_4(request):
    return render(request, 'book/index.html', 
                        context={'books_name': 'python',
                                       'hello': hello,    # 函数
                                       'fruits_say': ap.say,
                                       'fruits': ap,
                                       'list': ls,
                                       'dict': dc,})
复制代码

templates/book/index.html文件

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>模板变量</title>
</head>
<body>
    这个变量是字符串对象:{{ books_name }}<br>
    这个变量是函数对象:{{ hello }}<br>
    这个变量是类方法对象:{{ fruits_say }}<br>
    这个变量是类对象:{{ fruits }}<br>
    这个变量是类对象,访问类对象的属性:{{ fruits.name }}<br>
    这个变量是类对象,访问类对象的方法:{{ fruits.say }}<br>
    这个变量是列表对象:{{ list }}<br>
    这个变量是列表对象,访问列表的元素:{{ list.1 }}<br>
    这个变量是字典对象:{{ dict }}<br>
    这个变量是字典对象,访问字典的键:{{ dict.a }}<br>
</body>
</html>
复制代码

三、常用的过滤器

作用:对变量进行过滤。在真正渲染出来之前,过滤器会根据功能处理好变量,然后得出结果后再替换原来的变量展示出来。

语法:{{fruits|lower}}      

语法:{{fruits|lower|capfirst}}       管道符号进行链式调用,比如实现一个功能,先把所有字符变成小写,把第一个字符转换成大写。

语法:{{fruits|cut:" "}}         使用参数:过滤器可以使用参数,在过滤器名称后面使用冒号“:”在加上参数,比如要把一个字符串中所有的空格去掉,则可以使用cut过滤器

常用的过滤器:

date和time过滤器格式

注:在使用时间时,需要再setting.py文件进行具体时区以及对应时区地点定义

例子:

自动转义:

四、静态文件引用

首先需要在setting.py文件中进行static文件路径配置

其次就在主项目目录下建立static文件,并建立对应css/image/js文件夹

1. 创建文件 /static/js/myjs.js

2. 创建文件/static/css/mystyle.css

3. 创建文件/static/image/myimage.jpg

4. 创建模板/templates/book/static_test.html

posted on   興華  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示