Преобразование списка в Django Queryset

Здесь я пытаюсь найти другой способ. Мои продукты будут отображаться двумя способами, если пользователь передает местоположение, то сначала берется местоположение, а затем обычно делаю свой фильтр, используя django-filters. Фильтр работает нормально, если только у меня нет проблемы с тем, что у объекта list нет атрибута model.

Я пытаюсь упростить свою проблему. У меня многопрофильная электронная коммерция, и теперь пользователь хочет видеть товары близких поставщиков, а затем продвигать фильтрацию.

все будет хорошо, если я смогу преобразовать список в queryset.

вот мой views.py

@api_view(['GET'])
def getProducts(request):

    nearby_locations = get_locations_nearby_coords(23.7106, 90.4349, 5)

    if(nearby_locations.count() > 0):
        products = []

        for i in nearby_locations:
            print(i.name)
            products.extend(list(Product.objects.all().filter(user__id=i.id)))

       
        filterset = ProductFilter(request.GET, queryset=products)
        if filterset.is_valid():
            products = filterset.qs
            
    else:
        products = Product.objects.all()
        filterset = ProductFilter(request.GET, queryset=products)
        if filterset.is_valid():
            products = filterset.qs


    page = request.query_params.get('page')
    paginator = Paginator(products, 10)

    try:
        products = paginator.page(page)
    except PageNotAnInteger:
        products = paginator.page(1)
    except EmptyPage:
        products = paginator.page(paginator.num_pages)

    if page == None:
        page = 1   


    print(products)

    page = int(page)
    serializer = ProductSerializer(products, many=True)
    return Response({'products': serializer.data, 'page': page, 'pages': paginator.num_pages})

В моем первом случае, если у меня есть список продуктов, и затем я передаю этот список как queryset, потому что мне нужно передать queryset здесь, и я хочу передать этот список как queryset или сделать новый queryset из этого списка. У меня есть все значения, хранящиеся в моем списке, как queryset.

   for i in products:
         print(i.name)

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

  filterset = ProductFilter(request.GET, queryset=products)
Вернуться на верх