【问题标题】:Django REST Framework, working with list of objects after get_querysetDjango REST Framework,在 get_queryset 之后使用对象列表
【发布时间】:2017-11-29 10:59:13
【问题描述】:

在我的views.py 中有 ViewSet:

class ProductViewSet(viewsets.ModelViewSet):
    queryset = Product.objects.all()
    serializer_class = ProductSerializer
    filter_class = OrderFilter
    filter_backends = (
        OrderingFilter,
        DjangoFilterBackend,
    )
    def get_queryset(self):
         ...some query...
         return products # return QuerySet object with all products in db.

过滤后我可以在哪里以及如何操作 Project 对象?能够从请求中获取数据。例如:

for product in products: # after pagination, filtering, etc. 
    product.price = product.price*self.request.user.discount

谢谢!

【问题讨论】:

    标签: django pagination filtering django-rest-framework


    【解决方案1】:

    例如,当您使用ModelViewSet 时,您将不得不覆盖list() 方法。签名是list(self, request, *args, **kwargs),据您了解,您可以使用请求对象并根据需要操作您的数据。

    如果您需要进一步的帮助,请告诉我!

    【讨论】:

    • 非常感谢!这个对我有用!它让我理解了视图是如何工作的! :)
    • 很高兴它帮助了你:)
    猜你喜欢
    • 2021-07-16
    • 2017-07-12
    • 2021-07-17
    • 2016-12-27
    • 1970-01-01
    • 2017-06-11
    • 2022-12-23
    • 2015-03-15
    • 2014-02-09
    相关资源
    最近更新 更多