模板
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的模板语法将数据渲染上去。
- 创建一个templates目录
1.调用模板的第一种方法
views.py
index.html
urls.py
执行结果:
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代理了下面的静态文件的具体地址