Django--模板标签系统介绍、模板语法、静态文件的配置

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_44863429/article/details/100672993

模板

from django.template import Template,Context
def about(request):
    html = '''
    <html>
        <head></head>
        <body>
            <h1>我是一个h1标签</h1>
            <h2>我是{{ name }}</h2>
            <a href ='https://baike.baidu.com/item/%E6%98%93%E5%BB%BA%E8%81%94/141748?fr=aladdin'>
            <img src='https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1568004554336&di=67701f8d8256b32162e2677fb2620649&imgtype=0&src=http%3A%2F%2F03.imgmini.eastday.com%2Fmobile%2F20180622%2F20180622045610_f1d15765600486c6dd6f19d4507fbf1b_3.jpeg' title='这是易建联' alt='加载失败'>
            </a>
            <p>{{ content }}</p>
        </body>
    </html>

    '''
    # 1.构建模板结构
    template_obj = Template(html)
    # 2.创建渲染模板
    params = dict(name='易建联',content='你是最棒的')
    content_obj = Context(params)
    # 3.进行渲染模板
    result = template_obj.render(content_obj)
    # 4.返回结果
    # retuen HttpResponse(html)
    return HttpResponse(result)

这种方式虽然能够实现调用一个html页面,并且能够将数据渲染上去,但是页面依然嵌套在python代码中,编写不方便,因此不常用

模板标签系统介绍

在做web开发,要给用户提供一个页面,页面包括静态页面+数据,两者结合起来就是完整的可视化的页面,Django的模板系统支持这种功能,首先需要写一个静态页面(结构html,样式css,行为js)然后通过python的模板语法将数据渲染上去。

  1. 创建一个templates目录
    [外链图片转存失败(img-6bCB94Ad-1568030318273)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1567997211237.png)]

1.调用模板的第一种方法

[外链图片转存失败(img-xRjGTQbx-1568030318275)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1567997922279.png)]

views.py

[外链图片转存失败(img-cyb2lvUV-1568030318276)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1567998578608.png)]
index.html
[外链图片转存失败(img-x3Uq4j5P-1568030318277)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1567998596010.png)]

urls.py

[外链图片转存失败(img-ojjtH654-1568030318278)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1567998702904.png)]

执行结果:

[外链图片转存失败(img-OAg2Sb1h-1568030318279)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1567998744857.png)]

2.调用模板的第二种方法

views.py

在这里插入图片描述

abc.html

在这里插入图片描述

urls.py

在这里插入图片描述

3.调用模板的第三种方法

views.py

在这里插入图片描述

模板语法

1.变量的使用

在模板中,如果想要使用后端传入的数据们就要用到模板语法去实现。

Django提供的模板语法:变量的使用,控制语句,循环

Django模板html文件中使用变量语法:{{}}

views.py

在这里插入图片描述

locals():是python 的方法,将本函数所有的局部变量全部返回。

tpltest.py

在这里插入图片描述

提取数组中的某个元素–名字.索引

提取字典中某个元素–名字.键

urls.py

在这里插入图片描述

执行结果:

在这里插入图片描述

2.控制语句

if else elif
模块中使用控制语句,语法结构
{% if 条件 %}
{% elif 条件 %}
{% else %}
{% endif %}

views.py

在这里插入图片描述

tpltest.html

在这里插入图片描述

执行结果

在这里插入图片描述

3.循环语句

1.遍历列表

在这里插入图片描述

执行结果:

在这里插入图片描述

2.遍历字典

在这里插入图片描述

执行结果:
在这里插入图片描述

3.forloop

forloop是一个Django自带的一个变量,作用域循环没记录循环的次数,可以对循环内容进行控制,判断,通常和if连用

在这里插入图片描述

4.过滤器

对视图传过来的数据进行二次处理

语法结构:{{ age | add:10 }}

在这里插入图片描述

safe Django

静态文件的配置

前端三大部分:结构 样式 行为

在web开发过程中,又一类型的文件叫做:静态文件,指:css,js,image。这些文件通常不被直接访问,往往实在加载页面的时候被加载这些内容是固定的。

静态文件的配置

1.创建目录

创建一个目录static

在static目录中创建三个目录:css、js、images

在这里插入图片描述

2.配置静态文件

在这里插入图片描述

# 静态文件的配置
STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR,'static'),
)
STATICFILES_DIRS后面可以使列表或者是元组

由static_URL代理了下面的静态文件的具体地址

在这里插入图片描述

3.静态文件的使用

在这里插入图片描述

在这里插入图片描述

4.页面跳转

[外链图片转存失败(img-ilwzv4Od-1568030318299)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1568029827079.png)]

猜你喜欢

转载自blog.csdn.net/weixin_44863429/article/details/100672993