对DJango视图(views)和模版(templates)的使用详解
框架(架构)  /  管理员 发布于 6年前   166
视图
在django中,视图对WEB请求进行回应
视图接收reqeust对象作为第一个参数,包含了请求的信息
视图就是一个Python函数,被定义在views.py中
定义完成视图后,需要配置urlconf,否则无法处理请求
在Django中,定义URLconf包括正则表达式、视图两部分
Django使用正则表达式匹配请求的URL,一旦匹配成功,则调用应用的视图
注意:只匹配路径部分,即除去域名、参数后的字符串
在test1/urls.py插入booktest,使主urlconf连接到booktest.urls模块
视图代码
# views.py# 一个简单的视图,固定返回 hrllo worlddef index(request): return HttpResponse('hello world')
模板
模板是html页面,可以根据视图中传递的数据填充值
模板和应用booktest是同级目录
模板的结构templates/应用名(booktest)/*.html
将模板的地址信息拼接在settings.py文件中的TEMPLATES的DIRS值中:'DIRS': [os.path.join(BASE_DIR, ‘templates')],
urls代码
方式一: 直接修改原始的urls
# fanlie/fanlei/urls.pyfrom django.conf.urls import include, urlfrom django.contrib import adminfrom booktest import viewsurlpatterns = [ url(r'^admin/', include(admin.site.urls)), # 如果匹配的是空就就调用views.index返回首页 url(r'^$',views.index),]
方式二: 在应用目录下修改
# fanlie/fanlei/urls.pyurlpatterns = [ url(r'^admin/', include(admin.site.urls)), # 什么都不干直接去booktest.urls去找相应的匹配 url(r'^',include('booktest.urls')),]# fanlei/booktest/urls.pyfrom django.conf.urls import urlfrom . import viewsurlpatterns = [ # js结尾就是调用视图中的函数 js url(r'.*.js',views.js), # 直接访问代表是首页,调用视图中的函数index url(r'^$', views.index), # 如果是image开头的代表是图片,直接让DJango去打开对应的图片返回 url(r'^images/(?P<path>.*)', 'django.views.static.serve', {'document_root':'/home/python/Desktop/fanlei/templates/booktest/images'}),]
上面模板用到的视图
from django.shortcuts import renderdef index(request): # 返回引号中的文件的内容 return render(request, 'booktest/index.html')def js(request): # 返回引号中的文件的内容 return render(request,'booktest/jquery-1.12.4.js')
以上这篇对DJango视图(views)和模版(templates)的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号