我的目标是返回一个json对象,该对象将用于动态填充html代码中各种select语句中的选项。
所以我想从模型a抓取一个属性,从模型b抓取另一个,依此类推
那么我想要来自属性a和b以及c的所有值
作为键的JSON数组的值,因此
json = {
modelA: {'atter1, atter2, atter3}
modelB: {'atter1, atter2, atter3}
model..:{you get the point}
}
上面引用的帖子的这一部分很有意义:
class TimelineViewSet(viewsets.ModelViewSet):
"""
API endpoint that lists all tweet/article objects in rev-chrono.
"""
queryset = itertools.chain(Tweet.objects.all(), Article.objects.all())
serializer_class = TimelineSerializer
这不是什么:
class TimelineSerializer(serializers.Serializer):
pk = serializers.Field()
title = serializers.CharField()
author = serializers.RelatedField()
pub_date = serializers.DateTimeField()
如何将单独的模型属性设置为正确的json键?
我假设它类似于序列化器关系,但是这些值不是通过一对一,一对一或多对多的方式相互关联的。我只想立即获取所有这些信息,而不是为每个值创建一个api。
我是个迷失的小女孩,我想请你帮助我找到回家的路。
如果您合理地设计响应格式,则在Django REST Framework中会发现事情变得更容易。
目前似乎有点模糊,但我建议如下:
{
"tweets": [
{"tweet_attr_A": value_1, ...}, // first tweet
{"tweet_attr_A": value_2, ...}, // second tweet
//etc
],
"articles": [
{"id": 1, ...}, // first article
{"id": 2, ...}, // second article
//etc
]
}
我们可以用三个序列化器来表达这一点,例如:
class TweetSerializer(serializers.ModelSerializer):
class Meta:
model = Tweet
class ArticleSerializer(serializers.ModelSerializer):
class Meta:
model = Article
class TimelineSerializer(serializers.Serializer):
tweets = TweetSerializer(many=True)
articles = ArticleSerializer(many=True)
http://www.django-rest-framework.org/api-guide/serializers/#dealing-with-
nested-objects
然后,因为我们使用的模型不止一个,所以最简单的是定义自己的自定义视图集,而不是尝试将其塞入DRF的神奇ModelViewSet类型中。
http://www.django-rest-framework.org/api-
guide/viewsets/#example
首先,我们需要一个对象类型传递给我们的TimelineSerializer。它应该具有两个属性:tweets
和articles
from collections import namedtuple
Timeline = namedtuple('Timeline', ('tweets', 'articles'))
然后,我们将定义自定义视图集以获取推文和文章,实例化一个Timeline对象并返回TimelineSerializer数据:
class TimelineViewSet(viewsets.ViewSet):
"""
A simple ViewSet for listing the Tweets and Articles in your Timeline.
"""
def list(self, request):
timeline = Timeline(
tweets=Tweet.objects.all(),
articles=Article.objects.all(),
)
serializer = TimelineSerializer(timeline)
return Response(serializer.data)
问题内容: 有人问这个问题,以扩大并填补这个问题:使用Django REST Framework从多个模型返回结果 我的目标是返回一个json对象,该对象将用于动态填充html代码中各种select语句中的选项。 所以我想从模型a抓取一个属性,从模型b抓取另一个,依此类推 然后我想要来自属性a和b以及c的所有值 作为键的JSON数组的值,因此 上面引用的帖子的这一部分很有意义: 这不是什么: 如何
问题内容: 我想反序列化JSON(使用Jackson 1.9.11和RestTemplate 1.0.1),其中一个字段可能具有更多类型含义,例如: 要么 一个或另一种情况对于一个特定类型的设置器(String od custom Response类)都可以正常工作,但是当我将实体bean重写的设置器放入能够处理这两种情况时,将引发异常: 我当时在考虑三种解决方案,但没有任何一种可行: 仅使用St
我尝试反序列化json: 我有两个实体: 和 如何使用一个json条目同时反序列化两个实体?以下是使用Jackson ObjectMapper的main摘录: 它解析日期、uuid和数据集,但不能解析具有hmm_subfamily、hmm_evalue和hmm_score值的HmmResult对象:我得到错误:p.getHmmResult():null。(HmmResult hm=ObjMappe
问题内容: 在我的科目表中,我按学期和月份列出了所有学生的课程,每个月的分数 这就是我尝试过的 我从查询中获得的当前输出是每个查询的多个响应,因为我可以将其更改为,但不会获取其他数据 我的问题是我如何将它们合并为一个响应,并在预期的输出中返回以下数据(我在每个字段中添加了一些说明以对其进行解释) 预期产量 问题答案: 问题是,您想获取主题,而不是学生。因此,我反转了FROM和LEFT JOIN。因
我需要在JavaFX中执行如下操作: 你能告诉我如何在GridPane布局中只改变一列(中间的一列)的大小吗?这些黑色边框的矩形是VBoxs。基本上,VBoxs的宽度必须保持不变,这个红色标记区域的宽度应该调整。有什么想法或建议吗?
我对node.js不熟悉,有人能告诉我如何使用res.send()方法发送多个数据库行吗?在上面的代码中,我从数据库中提取了多个行,但当我将这些数据放入res.send()中时,它不能运行for循环,并给出类似“throw err;//Rethrow non-MySQL errors^”的错误 发送后无法设置标头。“ app.post(“/GetUserList.htm”,function(req