code: def get(cls, *args, **kwargs):
          
          if len(args) == 1:  # Guess it's a pk
              pk = args[0]
          elif kwargs:
              # special case to check for a simple pk
              if len(kwargs) == 1 and cls._field_is_pk(list(kwargs.keys())[0]):
                  pk = list(kwargs.values())[0]
              else:  # case with many filters
                  result = cls.collection(**kwargs).sort(by='nosort')
                  if len(result) == 0:
                      raise DoesNotExist(u"No object matching filter: %s" % kwargs)
                  elif len(result) > 1:
                      raise ValueError(u"More than one object matching filter: %s" % kwargs)
                  else:
                      try:
                          pk = result[0]
                      except IndexError:
                          # object was deleted between the `len` check and now
                          raise DoesNotExist(u"No object matching filter: %s" % kwargs)
  
          else:
              raise ValueError("Invalid `get` usage with args %s and kwargs %s" % (args, kwargs))
          return cls(pk)
docs: Retrieve one instance from db according to given kwargs.
  
          Optionnaly, one arg could be used to retrieve it from pk.