背景

urls在django中为路由,view为视图。通过在urls定义路由,到view里去访问达到前后端交互的目的。本文来说明哈几种在view中用于回传至前端的格式及常用使用场景。

几种格式的对比及使用场景

前提条件:

urls文件中需配置好路由

from django.conf.urls import url

from .import views

urlpatterns=[

url(

'home',

views.home,

name='home'

)]

render

使用场景:编写的html代码,直接渲染在网页上,不涉及复杂的数据处理时,可使用render

1.templates文件夹下创建home.html页面

2.views.py的定义对应的视图函数

from django.shortcuts import render

def home(request):

return render(request,'home.html')

访问127.0.0.1:8000/home可见home.html页面

若想简单修改哈前端html的部分字段,可调整代码如下:

from django.shortcuts import render

def home(request):

data = [1,2,3]                             // data数据类型包括列表/字典

return render(request,'home.html',{'data':data})

html使用 {{ }} 来获取数据,如

{{data}}

注:render是将整个html字符串返回并渲染成网页

httpresponse

使用场景:涉及到复杂的数据处理,需要对前端发送的Ajax请求处理后的后端数据回传至js的时候需使用httpresponse,但需要注意值要使用json.dumps()处理

views.py的定义对应的视图函数

from django.http import JsonResponse,HttpResponse

import json

def home(request):

data = {'name':'zhangsan','age':18}

return HttpResponse(json.dumps(data))

注:此时返回并不是标准格式的json,而是Content-Type:text/html;要想获得标准的json格式,需修改代码为returnHttpResponse(json.dumps(data),content_type="application/json")

jsonresponse

使用场景:是HttpResponse的子类,内部强制做了json转换

views.py的定义对应的视图函数

from django.http import JsonResponse,HttpResponse

def home(request):

data = {'name':'zhangsan','age':18}

return JsonResponse(data)                //  返回Json的数据格式

python html5交互方式,python+Django(5)—回传至前端几种方式相关推荐

  1. python用于导入模块或模块中的对象_在 Python 中导入模块中的对象有哪几种方式? (5.0分)_学小易找答案...

    [判断题]尽管可以使用 import 语句一次导入任意多个标准库或扩展库,但是仍建议每次只导入一个标准库或扩展库. (2.0分) [填空题]表达式 int(str(34)) == 34 的值为 ___ ...

  2. django文件上传到服务器,django上传文件的三种方式

    Django文件上传需要考虑的重要事项 文件或图片一般通过表单进行.用户在前端点击文件上传,然后以POST方式将数据和文件提交到服务器.服务器在接收到POST请求后需要将其存储在服务器上的某个地方.D ...

  3. Django中Model继承的三种方式

    Django中Model继承的三种方式 Django中Model的继承有三种: 1.抽象继承 2.多表继承 3.proxy model(代理model) 1.抽象继承 第一种抽象继承,创建一个通用父类 ...

  4. Python与用户的交互 ,格式化输出的三种方式

    目录 Python与用户的交互 1.为什么交互? 格式化输出的三种方式 1.占位符 format格式化 f-String格式化 基本运算符 流程控制之if判断 1.语法 1.1 if 1.2 if.. ...

  5. python 调用js类_Python 调用 JS 常用的4种方式,带你学会如何解密

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于AirPython ,作者星安果 1. 前言 日常 Web 端爬虫过 ...

  6. python网页结构分析图_Python爬虫解析网页的4种方式 值得收藏

    用Python写爬虫工具在现在是一种司空见惯的事情,每个人都希望能够写一段程序去互联网上扒一点资料下来,用于数据分析或者干点别的事情. 我们知道,爬虫的原理无非是把目标网址的内容下载下来存储到内存中, ...

  7. python遍历字符串存入列表_Python遍历字符串的4种方式

    码农公社  210.net.cn  210是何含义?10月24日是程序员节,1024 =210.210既 210 之意. Python遍历字符串的4种方式 1.下标法 2.for in 3.iter内 ...

  8. python舵机控制程序_树莓派PWM控制舵机的两种方式

    PWM控制舵机简介 通常情况下,伺服电机(舵机)是由一个标准的直流系统和一个内部反馈控制装置(一个减速齿轮和电位计)来组成的.伺服电机(舵机)的主要作用是将齿轮轴旋转到一个预定义的方向上.伺服电机(舵 ...

  9. c++读取txt文件中的数字_在Python中读取包中的数据文件的三种方式

    我们知道,写Python代码的时候,如果一个包(package)里面的一个模块要导入另一个模块,那么我们可以使用相对导入: 假设当前代码结构如下图所示: 其中test_1是一个包,在util.py里面 ...

最新文章

  1. 转载:说说高斯过程回归
  2. HTML页面展示遇到问题
  3. 查看IE浏览器安装的插件
  4. WORD 粘贴代码 不检查语法
  5. EasyDarwin开源流媒体服务器如何实现按需推送直播的
  6. C++ 动态联编实现原理分析
  7. Mac上emacs gpg: 无法检查签名:没有公钥
  8. 留存: struts2+jquery+json集成
  9. 《肖申克的救赎》--[美]斯蒂芬·金
  10. 基于python的智能文本分析 书_推荐一本Python数据分析必备工具书
  11. 淘宝直播全屏页重排算法实践
  12. 禅与摩托车维修艺术(4)
  13. pandas多列合并成一列
  14. 《信息物理融合系统(CPS)设计、建模与仿真——基于 Ptolemy II 平台》——2.2 令牌和数据类型...
  15. 支付服务-----功能实现逻辑
  16. Centos6.5更新e1000网卡驱动
  17. 安卓桌面壁纸_让安卓实现 “非线性” 动画壁纸,有iOS内味了
  18. 2022跨境电商是宝还是坑-成都扬帆跨境电商
  19. 水-生命之源,喝水的讲究
  20. 设计师专用WIN10系统集成AI人工智能DPO软件可动态提高设计程序性能提升高达394%

热门文章

  1. PHP三年15K,程序员月薪15K相亲三年才成功,被拒理由:这个薪资提鞋都嫌弃
  2. vb脚本从入门到精通_sqlmap从入门到精通第七章720 绕过WAF脚本space2morecommentamp;space2morehash...
  3. netty channelinactive触发条件_Netty的Future和Promise
  4. mysql scws_php利用scws实现mysql全文搜索功能的方法
  5. teststand调用python模块_NI TestStand 2019下载-测试管理软件NI TestStand 2019下载v19.0.1 官方版-西西软件下载...
  6. java excel 晒新年操作_java操作Excel的poi 创建一个sheet页
  7. php 5.4.5,PHP 5.4.5 和 5.3.15 发布
  8. php表单实现分页,**PHP分步表单提交思路(分页表单提交)
  9. java环境怎么搭,如何搭建一个完整的Java开发环境
  10. asp隐藏邮箱部分字符_asp.net core 中使用 signalR(二)