Python日记——Django模板的渲染
来源:互联网 发布:charles mac 编辑:程序博客网 时间:2024/06/06 11:01
看这篇文章前首先要熟悉Django的大概使用
知道基础项目结构,会创建模板,会简单的配置setting,会写视图函数,会配置路由
熟悉后台的同学一定知道数据绑定模式
简而言之就是挖空填洞
模板的渲染就是说洞已经挖好了,然后渲染就是个填洞的过程
先从简单的说起
from django.template import Template,Context t=Template('hello,{{name}}') print t.render(Context({'name':'jack'})
不难理解Tempalte就是模板,挖好洞
Context就是说明哪个数据填哪个洞
然后执行t.render()就是开始填洞
所以输出
hello,jack
但是如果是渲染一个html的模板呢
1.首先创建模板,这里我起名为5.html
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>5</title></head><body> {{ book }}</body></html>
已经在html里挖好一个名为book的洞了
2.然后要写一个视图函数
在app的views.py里添加
from django.shortcuts import renderdef testrender(request): return render(request,'5.html',{'book':'Hello Django'})
3.然后配置路由
在url.py里添加
from myApp.views import *urlpatterns = [ ... url(r'^testrender/$',testrender),]
记得导入app的views,不然会检测不到testrender视图函数
4.然后启动项目
一般情况下输入http://127.0.0.1:8000/testrender/就可以看到我们渲染好的模板了
如果想渲染表单呢
1.首先新建一个模板我取名为1.html
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <form method="post"> {{form.as_p}} <input type="submit" name="ok"> {% csrf_token %} </form></body></html>
form.as_p就是模板的洞
一定要加上{% csrf_token %},这样可以防止恶意post表单
2.然后新建一个表单
在 app的forms.py(没有的话自己新建)里新建表单
from django import formsclass Mybook(forms.Form): name=forms.CharField() author=forms.CharField() date=forms.CharField() num=forms.IntegerField()
3.然后开始渲染
在app的views.py里添加视图函数
from myApp.forms import *from django.http import HttpResponsedef book(request): if request.method=='POST': form=Mybook(request.POST) if form.is_valid(): data=form.cleaned_data title=data['name'] return HttpResponse(title) form=Mybook() return render(request, '1.html', {'form':form})
首先检测是不是post方法,不是的话就渲染模板,是的话就检查form中的数据是否合理,合理的话就返回显示name这个字段
基本的渲染方法就是这些
高级的还有设置过滤器和标签,还可以在挖那个洞里用管道对数据进行转换,这些就等大家去探索了
0 0
- Python日记——Django模板的渲染
- python日记——使用django心得
- [Django模板系统]Django的模板渲染(render)机制
- Django的render(模板渲染)机制
- 第二章:Django模板的渲染
- django学习04---模板的渲染
- Django模板渲染
- python django模板的使用
- Python日记——用Django做一个简易的知乎日报API
- 啦啦啦啦~Django1.96---Django的模板渲染(render)机制
- Django开发(四)——Django的模板
- python django模版渲染页面
- Django模块模板渲染之django.shortcuts包含的函数及使用
- Python+Django+SAE系列教程10-----Django的模板
- 【Python】django模板
- Python, Django模板系统
- Python django模板
- python-django 模板
- Android开发之电话短信拍照分享功能实现
- Linux网络编程入门-4
- Hibernate的关联映射(7)-双向1-1关联
- EasyDarwin开源流媒体云平台之云台ptz控制设计与实现
- 5-29 删除字符串中的子串 (20分)
- Python日记——Django模板的渲染
- JAVA8 十大新特性详解
- JFrame设置最大尺寸
- 统计学习方法--条件随机场1
- Learning Python 004 基础的数据类型和变量
- C#下载文件
- VS环境下Debug和Release版本的区别
- openresty 根据参数 重定向请求
- 记录下我使用的UI