【发布时间】:2019-04-21 17:37:38
【问题描述】:
这是我的看法
class FindKeyWordNews(ListAPIView):
queryset = []
serializer_class = KeyWordSerializers
def get_queryset(self):
query_list = []
keyword = self.kwargs.get("keyword")
if keyword:
republic = Republic.objects.filter(Q(headline__icontains=keyword)).order_by('-id')
ndtv = Ndtv.objects.filter(Q(headline__icontains=keyword)).order_by('-id')
indiatoday = Indiatv.objects.filter(Q(headline__icontains=keyword)).order_by('-id')
hindustan = Hindustan.objects.filter(Q(headline__icontains=keyword)).order_by('-id')
thehindu = Thehindu.objects.filter(Q(headline__icontains=keyword)).order_by('-id')
zee = Zeenews.objects.filter(Q(headline__icontains=keyword)).order_by('-id')
query_list = list(chain(republic, ndtv, indiatoday, hindustan, thehindu, zee))
return query_list
我知道为单个模型创建序列化程序类
class NdtvSerializers(serializers.ModelSerializer):
class Meta:
model =Ndtv
fields = ('headline', 'link', 'date', 'category', 'sentiment')
如何为上述视图创建多个模型实例的序列化程序类?模型的架构是相同的。
【问题讨论】:
-
你只需要一个序列化器,而不是模型序列化器。
-
@Sayse 问题解决了。
标签: django python-3.x django-models django-rest-framework django-rest-framework-filters