栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

django--模板,模板表情,过滤器

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

django--模板,模板表情,过滤器

模板:T

可以根据在视图中传递字典数据,传递给模板并动态生成网页

模板变量

语法: {{变量名}}

取出变量名所对应的值,变量名来源于视图函数中传递的字典key

# urls.py
urlpatterns = [
    path('index',index),
]

# views.py
def index(request):
    data = {'name':'花花','age':18}
#     创建templates模板文件夹,创建html文件
    return render(request,'index.html',data) ## 渲染的视图文件名是index.html 传递的数据是定义的data字典
{# templates/index.html #} 



    
    Title


    姓名:{{name}}
	年龄:{{age}}


配置settings文件

#settings.py
# 模板
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')], # 告诉django的模板引擎在找模板的时候根据这个路径去找 
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]
过滤器

过滤器本质就是一个函数,django提供了一些过滤器可以在模板中使用

语法: {{变量名| 过滤器名字}}

# urls.py
 path('filter_test',filter_test),
 #views.py
# 过滤器,本质是一个函数
def filter_test(request):
    data = {
        'slogan':'mike',
        'lan':'python'
    }
    return render(request,'filter.html',data)

# filter.html



    
    过滤器




{{slogan | capfirst }}

{{ slogan | default:'空'  }}

{{ slogan  | default:'life is short'| capfirst  }}


模板标签

语法: {%标签名%}
在模板中进行逻辑处理

if for 语法:{%for 变量名 in 要循环的变量%}{%endfor%}
# urls.py
path('index2',index2),
# views.py
def index2(request):
   data = {
        'hobby1':['看电影','学python','锻炼'], # 列表
        'hobby2':('看电影','学python','锻炼'), # 元组
        'hobby3':{'看电影','学python','锻炼'}, # 集合
        'score':{'小1':90,'小2':75,'小4':91},
        'test' : [],
        'status':True,
        'num':10
    }
    return render(request,'index2.html',data)



    
    Title


    {hobby}}-->
    
    {% for i in hobby %} {forloop.counter}} {{i}}--> {forloop.counter0}} {{i}}--> {forloop.revcounter}} {{i}}--> {forloop.revcounter0}} {{i}}--> {forloop.first}} {{i}}-->
  • {{forloop.last}} {{i}}
  • {%endfor%}
    {%for i in score%}
  • {{i}}
  • {%endfor%} {%for i in score.values%}
  • {{i}}
  • {%endfor%} {%for k,v in score.items%}
  • {{k}} {{v}}
  • {%endfor%}
    {%for t in test%}
  • {{t}}
  • {%empty%}
  • 抱歉,没有查询到数据
  • {%endfor%}
{%if status%} 百度一下 {%else%} 潭州课堂 {%endif%} {%if age > 20%} 百度一下 {%else%} 潭州课堂 {%endif%} {%if age > 20%} 百度一下 {%elif age == 15%} 潭州课堂 {%else%} 新浪 {%endif%}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1012526.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号