无法在Django中使用MongoEngine Pymongo返回JSON对象? [英] Can't Return JSON object using MongoEngine Pymongo with Django?

查看:289
本文介绍了无法在Django中使用MongoEngine Pymongo返回JSON对象?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

因此,我正在尝试为项目返回JSON对象.我花了几个小时试图让Django仅返回JSON.

So I'm trying to return a JSON object for a project. I've spent a few hours trying to get Django just returning the JSON.

以下是我们一直在使用的视图:

Heres the view that we've been working with:

def json(request, first_name):
    user = User.objects.all()
    #user = User.objects.all().values()
    result = simplejson.dumps(user, default=json_util.default)
    return HttpResponse(result)

这是我的模特:

class User(Document):  
    gender = StringField( choices=['male', 'female', 'Unknown']) 
    age = IntField()
    email = EmailField()
    display_name = StringField(max_length=50)
    first_name = StringField(max_length=50)
    last_name = StringField(max_length=50)
    location = StringField(max_length=50)
    status = StringField(max_length=50)
    hideStatus = BooleanField()
    photos = ListField(EmbeddedDocumentField('Photo')) 
    profile =ListField(EmbeddedDocumentField('ProfileItem'))
    allProfile = ListField(EmbeddedDocumentField('ProfileItem')) #only return for your own profile

这就是它的返回内容:

[<User: User object>, <User: User object>] is not JSON serializable

关于如何返回JSON的任何想法?

Any thoughts on how I can just return the JSON?

推荐答案

对于MongoEngine 0.8或更高版本,对象和查询集具有to_json()方法.

With MongoEngine 0.8 or greater, objects and querysets have a to_json() method.

>>> User.objects.to_json()

这篇关于无法在Django中使用MongoEngine Pymongo返回JSON对象?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆