Django rest_framework筛选器中的contain方法是什么

时间:2019-02-08 00:53:08

标签: django django-rest-framework

假设我有一个数据库,如下所示:

{
    name: 'We love Football',
    type: 'Sports',
}
{
    name: 'Let's play Football',
    type: 'Sports'
}
{
    name: 'Let's play Basketball',
    type: 'Sports'
}

我需要实现以下内容:

class GameAPIListView(ListAPIView):
     serializer_class = GameSerializer
    def get_queryset(self):
        term = self.request.GET['term']
        data = Game.objects.filter(name.contains(term))
        return data

如果我键入“ Fooball”,则将返回前两个项目,因为它们包含令牌“ Football”。正确的方法是什么?提前致谢。

1 个答案:

答案 0 :(得分:2)

您需要尝试使用name__contains link。另一件事是使用icontains link搜索不区分大小写的搜索。

如果您使用的是postgres数据库,那么还有许多其他搜索功能link 在django中可用。