指南:本文的首席执行官注释将向您介绍Django如何返回与JSON相关的内容。我希望这对每个人都会有所帮助。让我们来看看。
1.自定义和替换课程
2. [使用Django的构建 - 序列化程序将QuerySet转换为JSON]
3.使用值()
没关系
引入渲染
从django.shortcuts导入渲染
返回时,将httpresponse更改为返回渲染,类似于
返回渲染(请求,'https://www.shouxicto.com/article/index.html',{'username':'johanna':'johanna','pic':'001.png'})
使用Python提供的JSON软件包在Django模型的定义中为Tojson添加了一种方法。使用django模型访问_meta.fields获取相关属性。示例如下::
类别类别(Models.Model):
autoid = model.autofield(primary_key = true)
电子邮件= models.charfield(max_length = 150,空白= false)
comtype = models.charfield(max_length = 20,空白= false)
catName = models.charfield(max_length = 150,空白= false)
def __unicode __(self):
返回'%s'%(self.catname)
def tojson(self):
导入JSON
然后使用Django查找数据并将其转换为JSON。代码如下:
行= models.category.objects.get(autoid = 23)
打印行。
以下示例显示了如何从HTML发送JSON并在Django接收JSON数据。在HTML中,可以通过JSON对象将数据发送到JSON对象中的服务器。
用户名用户名
密码密码
一个数组,每个数组包括:游戏编号game_id和得分级别
然后,您可以使用以下JavaScript(jQuery)代码:
脚本类型=“ text/javascript”
$(function(){
$('#upload')。单击(函数(){
var json_obj = {
用户名:$('#username')。val(),
密码:$('#password')。val(),
数据:[[
{{{
game_id:$('#datas1')。val(),
级别:$('#Level1')。val()
},,
{{{
game_id:$('#datas2')。val(),
级别:$('#Level2')。val()
}
这是给予的
};// json对象
var json_str = json.stringify(json_obj);//将JSON对象变成JSON格式字符串
$ .post(“/datasave”,json_str,回调,“ json”);
})
功能回调(JSON){
$('#response')。html('代码:'+json ['status'] ['code']+“消息:”+json ['status'] ['message']);
}
})
/脚本
在上面的代码中,数据将发送到/datasave。在django中,使用request.raw_post_data,然后使用simplejson将其转换为字典dict数据类型。代码如下:如下:
DEF DATASAVE(请求):
dict = {}
info ='数据日志保存成功'
尝试:
如果request.method =='post':
//request.raw_post_data从客户端发送的原始数据,将其转换为词典数据类型REQ通过simplejson的加载方法
req = simplejson.loads(request.raw_post_data)
用户名= req ['用户名']
密码= req ['密码']
datas = req ['datas']
game_id1 = datas [0] [game_id']
除了:
导入系统
info =“%s ||%s”%(sys.exc_info()[0],sys.exc_info()[1])
dict ['消息'] =信息
dict ['create_at'] = str(ctime())
json = simplejson.dumps(dict)
返回httpresponse(JSON)
结论:以上是Django如何返回JSON相关内容答案并总结的首席CTO注释。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?