code: def list(self, **filters):
          
          LOG.debug(u'Querying %s by filters=%s', self.model_class.__name__, filters)
          query = self.__queryset__()
          perm = build_permission_name(self.model_class, 'view')
          LOG.debug(u"Checking if user %s has_perm %s" % (self.user, perm))
          query_with_permission = filter(lambda o: self.user.has_perm(perm, obj=o), query)
          ids = map(lambda o: o.pk, query_with_permission)
  
          # FIXME: Return to query again without use database
          queryset = self.__queryset__().filter(pk__in=ids)
          related = getattr(self, 'select_related', None)
          if related:
              queryset = queryset.select_related(*related)
  
          return queryset
docs: Returns a queryset filtering object by user permission. If you want,
          you can specify filter arguments.
  
          See https://docs.djangoproject.com/en/dev/ref/models/querysets/#filter for more details