具有空过滤器值的Django filter_class

时间:2018-08-02 08:30:40

标签: django django-rest-framework django-filter

我有一个类似Django的Viewset:

class OrderViewSet(...):

    permission_classes = [
        IsAuthenticated, HasApiPermission, CanAdministerHosts, ]
    queryset = Order.objects.all()

    serializer_class = OrderSerializer
    filter_class = OrderFilter

和OrderFilter类:

class OrderFilter(APIv3FilterSet):
    """
    Filter for order.
    """
    // some fields

    class Meta:
        model = UserId
        fields = // some fields

此功能具有一些过滤器值,例如GET .../order/?id=1 但是如果我没有像GET .../order/这样的过滤器值,则代码返回错误:

AttributeError at .../order/\n'NoneType' object has no attribute 'split'

这可能是因为emty过滤器字符串导致None类型对象。 假如我必须使用filter_class(而不是filter_backend或其他),如何解决此问题?

0 个答案:

没有答案