Get_queryset в ListAPIView возвращает пустой список

В моем приложении есть два типа пользователей, т.е. company и employees. Я пытаюсь отфильтровать набор запросов на основе этих типов следующим образом:

class ProductListAPIView(generics.ListAPIView):
    serializer_class = ProductSerializer
    # pagination_class = StandardResultsSetPagination
    permission_classes = (permissions.IsAuthenticated, )

    def get_queryset(self):

        if self.request.user.is_company == 'True':
            user_company = self.request.user.id
            emp = list(Employee.objects.filter(company=user_company).values_list('pk', flat=True))
            emp.append(user_company)
            queryset = Product.objects.filter(owner__in=emp).order_by('-pk')
            return queryset
        elif self.request.user.is_employee == 'True':
            com = Company.objects.filter(pk=self.request.user.id).pk
            emp = list(Employee.objects.filter(company=com).values_list('pk', flat=True))
            emp.append(com)
            queryset = Product.objects.filter(owner__in=emp).order_by('-pk')
            return queryset

Я пробовал URL с учетными данными сотрудника и компании, но он всегда возвращает пустой список, но когда я использую код компании самостоятельно, он работает отлично.

Я бы предположил, что is_company и is_employee являются булевыми полями.

В этом случае проверка должна быть

if self.request.user.is_company is True:
...
elif self.request.user.is_employee is True:
...

или просто

if self.request.user.is_company:
...
elif self.request.user.is_employee:
...
Вернуться на верх