'Returns a single instance matching this query, optionally with additional filter kwargs.
See :ref:`retrieving-objects-with-filters`
Returns a single object matching the QuerySet.
.. code-block:: python
user = User.get(id=1)
If no objects are matched, a :class:`~.DoesNotExist` exception is raised.
If more than one object is found, a :class:`~.MultipleObjectsReturned` exception is raised.'

def get(self, *args, **kwargs):

    if (args or kwargs):
        return self.filter(*args, **kwargs).get()
    self._execute_query()
    try:
        self[1]
        raise self.model.MultipleObjectsReturned('Multiple    objects    found')
    except IndexError:
        pass
    try:
        obj = self[0]
    except IndexError:
        raise self.model.DoesNotExist
    return obj
