首页>>后端>>Python->django如何返回Jason数据(2023年最新解答)

django如何返回Jason数据(2023年最新解答)

时间:2023-12-11 本站 点击:0

导读:今天首席CTO笔记来给各位分享关于django如何返回Jason数据的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

django views怎么返回json

直接利用python提供的json包,在django model的定义中增加一个方法toJSON,利用django model 能访问 _meta.fields 得到相关属性而得到,例子如下:

class Category(models.Model):

autoid = models.AutoField(primary_key=True)

email=models.CharField(max_length=150,blank=False)

comtype=models.CharField(max_length=20,blank=False)

catname=models.CharField(max_length=150,blank=False)

def __unicode__(self):

return '%s' % (self.catname)

def toJSON(self):

import json

return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))

然后用django查出数据,并转换成json,代码如下:

row=models.Category.objects.get(autoid=23)

print row.toJSON()

django 获取post传递的json数据

因为客户端传递过来的数据是json数据,可以看成一个json对象。不是传过来的post表单,所以你用request.POST.get('ID', '')这种肯定取不到值的。

def datasave(request):

    dict = {}

    info = 'Data log save success'

    try:

        if request.method == 'POST':

            req = simplejson.loads(request.raw_post_data)

            username = req['username']

            password = req['password']

            datas = req['datas']

            game_id1 = datas[0]['game_id']

   except:

        import sys

        info = "%s || %s" % (sys.exc_info()[0], sys.exc_info()[1])

    dict['message']=info

    dict['create_at']=str(ctime())

    json=simplejson.dumps(dict)

    return HttpResponse(json)

request.raw_post_data表示的是从客户端发送过来的原始数据,为了纯字符串, 通过simplejson的loads方法将其转换为字典数据类型req.

    上面的代码也演示了如何以JSON格式作为响应值, 而非HTML, 即通过simplejson的dumps方法, 将字典数据dict序列化为字符串形式,将通过HttpResponse返回.

如何在Django中接收JSON格式的数据

Restful请求里面的json数据吧,最方便的方法是用django rest framework框架。次之就是自己用json解析request.body,有的时候可能还需要编码转换

结语:以上就是首席CTO笔记为大家整理的关于django如何返回Jason数据的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/25222.html