关于view.py 中 ajax json 的用法
1、
data=models.Citys.objects.filter(upid=0)
data 的数据形式是一个查询集(也是一个列表,查询出来的每一条数据是一个对象):
<QuerySet [<Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, '...(remaining elements truncated)...']>
这种数据形式 ,不能作为render方法参数使用,render(request,'home/citys.html',data) 这种形式会报错,需要改成字典的形式才能使用render方法。如下
context={'data':data}
{'data': <QuerySet [<Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, <Citys: Citys object>, '...(remaining elements truncated)...']>}
然后使用 return render(request,'home/citys.html',context) 就可以了
2、
json格式的默认解析字典形式的数据,像查询集(列表形式的字典,[{},{}]),会报错,所以我们要这样返回json时要这样做return JsonResponse(data,safe) ,加一个safe=False。json 不能解析对象或者对象的序列化,所以我们要models.Citys.objects.filter(upid = cid).values() ,加一个.values() 。然后使用list()方法包括起来 data = list(models.Citys.objects.filter(upid = cid).values()) return JsonResponse(data,safe=False)
关于view.py 中 ajax json 的用法的更多相关文章
- javascript中的值如何传递到django下的views.py中或者数据库中?
用Ajax,Ajax有很多种写法,包括JQuery和JS,这里贴一个用JQuery写的最通用的Ajax,POST方法传递JSON格式数据: $.ajax({ url: "your url&q ...
- jquery中ajax使用error调试错误的方法
JQuery使我们在开发Ajax应用程序的时候提高了效率,减少了许多兼容性问题,我们在Ajax项目中,遇到ajax异步获取数据出错怎么办,我们可以通过捕捉error事件来获取出错的信息. jquery ...
- django基础 -- 3. urls.py view.py 参数 别名 重定向 常用方法 静态文件
一.基本格式 from django.conf.urls import url from . import views #循环urlpatterns,找到对应的函数执行,匹配上一个路径就找到对应的函数 ...
- Java和JavaScript中使用Json方法大全
林炳文Evankaka原创作品. 转载请注明出处http://blog.csdn.net/evankaka 摘要:JSON(JavaScript Object Notation) 是一种轻量级的数 ...
- [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- 转载 : Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结 投稿:jingxian 字体:[增加 减小] 类型:转载 时间:2013-11-14我要评论 本文是 ...
- 关于Jquery中ajax方法data参数用法的总结
data 发送到服务器的数据.将自动转换为请求字符串格式.GET 请求中将附加在 URL 后.查看 processData 选项说明以禁止此自动转换.必须为 Key/Value 格式.如果为数组,jQ ...
- python3开发进阶-Djamgo框架中的JSON和AJAX
阅读目录 什么是JSON 什么是AJAX AJAX常见的应用情景 jQery实现AJAX AJAX请求如何设置csrf_token AJAX上传文件 补充Django内置的serializers 一. ...
随机推荐
- flume的安装部署
系统环境:centos7.5 64位系统 1.下载安装包 官网下载离线安装包:apache-flume-1.8.0-bin.tar.gz 也可以使用linux命令下载: wget -c http:/ ...
- CentOS安装和配置Apache(httpd)
1. 安装httpd yum install httpd #安装apache 2. 启动httpd systemctl start httpd.service #启动apache 3. 随服务器自启动 ...
- python使用requests发送text/xml报文数据
def client_post_xmldata_requests(request_url,requestxmldata): #功能说明:发送请求报文到指定的地址并获取请求响应报文 #输入参数说明:接收 ...
- Tomcat启动报错:This file is needed to run this program
Tomcat版本为 8.5.29. 1.情景 kill调用tomcat进程后,重启tomcat报如下错误: Cannot find /usr/local/apache-tomcat-/bin/setc ...
- JAVA用QRCode生成二维码
QRCode jar下载地址: 生成:http://www.swetake.com/qrcode/index-e.html 读取:https://zh.osdn.net/projects/qrcode ...
- 在mysql中给查询的结果添加序号列
SELECT * FROM ( SELECT (@i:=@i+1) as i, id, data_send_time FROM jl_pims_machine_time mt,(select @i:= ...
- oracle 自定义比较函数
1>自定义比较函数,targetVal的值为字符串,例如:“>=90”,"2~8"等范围格式,dataVal值为字符串. create or replace funct ...
- 6.1 Pandora 实操 - 数据收集
添加机器 添加机器命令,在 linux 机器上执行此命令 添加成功 添加收集器 采集机器数据 解析数据 转换数据 发送数据 接着,下一步即,成功创建收集任务. 分发机器 确认收集人物,绑定到机器上. ...
- js各种获取当前窗口页面宽度、高度的方法
alert($(window).height()); //浏览器时下窗口可视区域高度 alert($(document).height()); //浏览器时下窗口文档的高度 alert($(docum ...
- 创建一个抽象的员工类, 抽象开发累继承员工类,JavaEE ,和安卓继承开发类在测试类中进行测试
/* 1 定义一个员工类 所有的子类都抽取(抽象类) Employee 属性:姓名 工号(生成get set ) 方法:工作 抽象 2 定义一个研 ...