【发布时间】:2013-08-03 16:52:57
【问题描述】:
我正在使用带有django-filter 包的Django REST 框架,但我的问题主要是关于django-filter。我不明白如何在“__in”查找中使用过滤器。
例如我有以下模型:
class Book(models.Model):
name = models.CharField(max_length=100)
class BookView(viewsets.ReadOnlyModelViewSet):
serializer_class = BookSerializer()
model = Book
filter_fields = ('id', 'name')
而且我不能使用像 /v1/books/?id__in=1,2,3 这样的 URL 来查找 ID 为 1、2 或 3 的书籍。
你如何使用 Django-filter 的 '__in' 查找?
【问题讨论】:
-
我已经读过了。我了解,可以重新实现 get_queryset 方法并通过 request.GET 参数进行过滤,但我想先尝试使用 django-filter 声明式方法。