Django笔记(页面复用之包含、自定义404页面、request对象和respons对象、加载静态资源)
2018-08-28 17:48
411 查看
目录
页面复用之包含
1.关键字
[code]{%include '你要包含的页面'%}
2.实例代码
[code]<p>我的劳动果实</p> {% include 'head.html'%} {% include 'content.html' %} </body>
调用其他html页面编写的代码
自定义404页面
1.在模板文件夹下新建一个 404.html 的页面
2.在settings.py 里关闭DEBUG
[code]DEBUG = FALSE
request对象与response对象
1.request对象
Request对象的作用是与客户端交互,收集客户端的Form、Cookies、超链接,或者收集服务器端的环境变量。
request对象是从客户端向服务器发出请求,包括用户提交的信息以及客户端的一些信息。客户端可通过HTML表单或在网页地址后面提供参数的方法提交数据,然后通过request对象的相关方法来获取这些数据。request的各种方法主要用来处理客户端浏览器提交的请求中的各项参数和选项。
服务器在接收到http请后,会根据报文创建HttpRequest对象,视图中的第一个参数就是HttpRequest对象,Django框架会进行自己的包装,之后传递给视图
属性
[code]def index(req): # 请求的ip,不是自己的 print(req.get_host()) # 类似字典的参数,包含了get的所有参数 print(req.GET) # COOKIES 类似字典的参数,包含所有的COOKIE print(dir(req.COOKIES)) # 请求完整路径 print(req.path) # 编码方式,常用utf-8 print(req.encoding) # 请求的方式,常见DET,POST print(req.method) print(req.META.get('REMOTE_ADDR')) return HttpResponse("ok")
方法
[code]is_ajax() #判断是否是ajax(),通常用在移动端和js中
response对象
服务器返回给客户端的数据
HttpResponse由程序员自己创建
1.不使用模板,直接H体图片Response()
2.调用模板,进行渲染
2.1 在html页面头部
[code]{% load static %}
2.2 直接使用render
[code]def play(req): return render(req, '2048.html')
示例
[code]def response_index(req): response = HttpResponse() response.content = "content设置的" # 追加 response.write("我是write写的") # 直接覆盖 response.content = "素质是有点" # 冲刷缓冲区 response.flush() response.status_code = 404 return response
拓展:HttpResponse子类
HttpResponseRedirect
响应重定向:可以实现服务器内部跳转
[code]return HttpResponseRedict('/wew/we/')
使用的时候推荐使用反向解析
JsonResponse
返回Josn数据的请求,通常用在异步请求上
[code]def get_josn(req): data = [1,2,3,45] return JsonResponse({"data":data})
加载静态资源
在工程的目录下创建一个static目录
修改settings.py文件
[code]STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static') ]
前端引用
[code]{%load static%} #引入css <link rel="stylesheet" href="{%static '你css的文件路径'%}"> #示例如下 <link rel="stylesheet" href="{%static '2048/css/style.css'%}"> #引入js <script src="{%static '你的js路径'%}"></script> #示例如下 <script src="{%static '2048/js/bind_polyfill.js'%}"></script>
阅读更多
相关文章推荐
- jsp页面加载静态资源404问题
- django的403/404/500错误自定义页面的配置
- 关于@requestMapping跳转页面静态资源无法加载问题
- c++笔记(6):类、对象、构造函数、析构函数、静态成员、友元、类包含
- django 自定义404页面
- Django实现自定义404,500页面教程
- Django自定义404错误,500错误页面
- django模板加载静态资源
- 端性能优化——加载页面和静态资源
- springmvc controller跳转后jsp页面无法加载静态资源css,图片等错误解决方法
- web工程加载静态js资源报404
- 安卓学习笔记---完美解决Android的WebView加载失败(404,500),显示的自定义视图
- springMVC学习笔记---day04-上传图片、JSON转对象、校验、全局异常、拦截器、静态资源
- 三种方式实现自定义圆形页面加载中效果的进度条,包含一个好看的Android UI
- django 的静态资源404问题
- Django templates加载css/js/image等静态资源
- Django项目不能加载静态资源的问题,解决办法!
- JSP 笔记(三: 域对象总结 ,静态包含和动态包含的区别 )
- java访问页面所有静态资源路径都404
- 用maven搭建springmvc项目时,jsp页面无法加载js或者css等静态资源