前言:
现在现在,我们要开始将变量的值展现在页面上面啦!
要是只会显示静态页面,我们的页面也太难看和死板了,
并且数据库的数据也没法展现在页面上。
但是呢,模板语法学习之后就可以啦!!!
目录
1 事前准备
2 模板语法
2.1 展现单独值
2.2 展现列表元素
2.3 展现字典
2.4 展现列表套字典
3 条件语句
4 请求
5 响应
1 事前准备
先用之前的方式在文件中创建一个model页面
step1:写urls.py
step2:在templates文件夹中创建一个model.html
step3:在views.py当中编写一个相应的model函数:
注意使用 render() 来返回界面哦!
2 模板语法
但是我们只返回静态页面怎么行呢?
至少要将变量的值展现到页面上吧?(为后面引用数据库做准备)
2.1 展现单独值
在html文件中写上一个盒子;
在对应的view函数中render他的键,在盒子中添加一个引用,便可以返回相应的值了;
事例如下:
2.2 展现列表元素
同样的方式也可以返回一个列表:
但是我们肯定是想返回列表中的某个元素,
而不是像这样粗暴的将列表直接贴在页面上。
于是乎,我们便可以这样写:
最后能单独得到相应的数据,即得到列表元素:
可以用循环得到所有的元素:
展示结果与上面相同,这里不多赘述。
2.3 展现字典
同样也可以用循环来处理,得到字典中的键与值:
结果如下:
2.4 展现列表套字典
展现列表和展现字典都学习了,那聪明的你告诉我,如何展现列表套字典呢?
有了上述经验之后,便好做了:
3 条件语句
我们的Django同时也支持逻辑判断哦:
Django开发的哦!!!!
访问顺序:
- 浏览器 --> urls.py--> views.py --> templates
- templates --> views --> 浏览器
视图函数的render内部:
- 读取含有模板语法的html文件
- 内部进行渲染(模板语法执行并替换数据)-->得到只包含HTML标签的字符串
- 将渲染(替换)完成的字符串返还给用户浏览器
4 请求
我们之前在views.py文件中写的函数的括号中都有有一个request,
那么request到底是什么东西呢?
request是一个对象,封装了用户发过来的所有请求相关的数据:
获取请求方式:
print(request.method)
在URL上传递值:
print(request.GET)
在请求中提交数据:
print(request.post)
5 响应
内容字符串返回给请求者:
return HttpResponse("返回的内容")
读取HTML的内容,渲染(替换),得到字符串,返回给浏览器:
return render(request, 'XXX.html', {"name":"名字"})
让浏览器进行一个重定向,进入重定向到网址:
return redirect("http://www.baidu.com")
注意:最终访问的方式是通过浏览器进行访问目标网站