【问题标题】:Best practice for permissions/filters in Django Rest FrameworkDjango Rest Framework 中权限/过滤器的最佳实践
【发布时间】:2018-12-06 23:34:03
【问题描述】:

我是 DRF 的新手,无法理解仅访问用户拥有的信息的最佳方式。我有一个看法:

class InvoiceAPIView(generics.ListAPIView):
    serializer_class = InvoiceSerializer
    permission_classes = [permissions.IsAuthenticated]

    def get_queryset(self):
        return Invoice.objects.filter(company__user=self.request.user)

使用过滤方法是否足够好,或者我应该添加自定义权限甚至去序列化。谢谢!

【问题讨论】:

    标签: django django-rest-framework django-views


    【解决方案1】:

    如果您需要将对象列表限制为仅包含当前用户拥有的对象,则覆盖查询集是可以的。

    Permission classes 用于检查基于视图或对象级别的权限。如果您需要允许所有用户查看所有对象,但只有所有者可以编辑特定对象,则最好使用权限。

    【讨论】:

      猜你喜欢
      • 2015-04-28
      • 2019-11-30
      • 1970-01-01
      • 1970-01-01
      • 2015-11-16
      • 2021-10-15
      • 1970-01-01
      • 2018-05-25
      • 2019-10-31
      相关资源
      最近更新 更多