如何从不同模型的json响应列表中查询集?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从不同模型的json响应列表中查询集?相关的知识,希望对你有一定的参考价值。
我有两个这样的模特
class User(models.Model):
user_id = models.IntegerField(primary_key=True)
name = models.CharField(max_length=18)
last_name = models.CharField(max_length=10)
age = models.CharField(max_length=10)
class Friend(models.Model):
friend_id = models.IntegerField(primary_key=True)
name = models.CharField(max_length=18)
age = models.CharField(max_length=10)
friend_id
和user_id
是同一个id
users = User.objects.filter(user_id=1)
friends = Friend.objects.filter(friend_id=1)
我像这样建立联盟
merge = list(users) + list(friends)
[<User: User object (1)>, <Friend: Friend object (1)>]
我想做的是来自merge
的json回复
HttpResponse(json.dumps(merge), content_type='application/json')
我希望你理解我的问题以及如何实现它的一些想法
答案
我这样解决了我的问题
merge = sorted( chain(users, friends) key=attrgetter('1'))
data = serializers.serialize('json', merge)
return HttpResponse(data, content_type='application/json')
以上是关于如何从不同模型的json响应列表中查询集?的主要内容,如果未能解决你的问题,请参考以下文章
Django 将查询集序列化为 JSON 以仅使用字段信息和 id 构造 RESTful 响应