我是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)
使用过滤器方法是否足够好,或者我应该添加自定义权限甚至进行序列化。谢谢!
答案 0 :(得分:1)
如果您只需要限制当前用户拥有的对象列表,则覆盖queryset是可以的。
Permission classes用于根据视图或对象级别检查权限。如果需要允许所有用户查看所有对象,但只有所有者可以编辑特定对象,则使用权限会很好。