docs: def _get_perm_obj_or_404(self, pk=None):
          """
          If is send parameter pk is returned object according this pk,
          else is returned object from get_obj method, but it search only inside filtered values for current user,
          finally if object is still None is returned according the input key from all objects.
  
          If object does not exist is raised Http404
          """
          if pk:
              obj = get_object_or_none(self.core.model, pk=pk)
          else:
              try:
                  obj = self.get_obj(False)
              except Http404:
                  obj = get_object_or_none(self.core.model, **self.get_obj_filters())
          if not obj:
              raise Http404
          return obj