code: def has_permission(self):
          
          objs = [None]
          if hasattr(self, 'get_perms_objects'):
              objs = self.get_perms_objects()
          else:
              if hasattr(self, 'get_object'):
                  try:
                      objs = [self.get_object()]
                  except Http404:
                      raise
                  except:
                      pass
              if objs == [None]:
                  objs = self.get_queryset()
  
          if (hasattr(self, 'permission_filter_queryset') and
             self.permission_filter_queryset is not False and
             self.request.method == 'GET'):
              if objs != [None]:
                  self.perms_filter_queryset(objs)
              return True
          else:
              return check_perms(self.request.user,
                                 self.get_permission_required(),
                                 objs, self.request.method)
docs: Permission checking for "normal" Django.