【发布时间】:2019-05-30 19:04:42
【问题描述】:
这是我的序列化器类:
class RankNewsChannelSerializers(serializers.ModelSerializer):
class Meta:
model = News_Channel
fields = ('id', 'name','total_star', 'total_user')
这是我的看法:
class NewsChannelRankApi(ListAPIView):
queryset = News_Channel.objects.order_by('-total_star').all()
serializer_class = RankNewsChannelSerializers
我得到的响应是根据total_stars排序的,如下所示:
[
{
"id": 9,
"name": "The Hindu",
"total_star": 36,
"total_user": 5
},
{
"id": 1,
"name": "NDTV",
"total_star": 36,
"total_user": 5
},
{
"id": 10,
"name": "Firstpost",
"total_star": 35,
"total_user": 6
},
{
"id": 14,
"name": "DD News",
"total_star": 25,
"total_user": 4
}
]
但我需要按total_star/total_user 对响应进行排序。
就像这是我的无效方法,但它会让您大致了解我想要实现的目标。
class NewsChannelRankApi(ListAPIView):
queryset = News_Channel.objects.order_by('-total_star/total_user').all()
serializer_class = RankNewsChannelSerializers
如果有办法请帮帮我?
【问题讨论】:
标签: python django python-3.x django-rest-framework django-views