Fixed #17813 -- Added a .earliest() method to QuerySet

Thanks a lot to everybody participating in developing this feature.
The patch was developed by multiple people, at least Trac aliases
tonnzor, jimmysong, Fandekasp and slurms.

Stylistic changes added by committer.
This commit is contained in:
Nick Sandford 2013-01-12 16:37:19 +08:00 committed by Anssi Kääriäinen
parent 37718eb50b
commit fe54377dae
9 changed files with 164 additions and 77 deletions

View file

@ -86,7 +86,8 @@ Django quotes column and table names behind the scenes.
The name of an orderable field in the model, typically a :class:`DateField`,
:class:`DateTimeField`, or :class:`IntegerField`. This specifies the default
field to use in your model :class:`Manager`'s
:meth:`~django.db.models.query.QuerySet.latest` method.
:meth:`~django.db.models.query.QuerySet.latest` and
:meth:`~django.db.models.query.QuerySet.earliest` methods.
Example::

View file

@ -1477,14 +1477,23 @@ This example returns the latest ``Entry`` in the table, according to the
If your model's :ref:`Meta <meta-options>` specifies
:attr:`~django.db.models.Options.get_latest_by`, you can leave off the
``field_name`` argument to ``latest()``. Django will use the field specified
in :attr:`~django.db.models.Options.get_latest_by` by default.
``field_name`` argument to ``earliest()`` or ``latest()``. Django will use the
field specified in :attr:`~django.db.models.Options.get_latest_by` by default.
Like :meth:`get()`, ``latest()`` raises
:exc:`~django.core.exceptions.DoesNotExist` if there is no object with the given
parameters.
Like :meth:`get()`, ``earliest()`` and ``latest()`` raise
:exc:`~django.core.exceptions.DoesNotExist` if there is no object with the
given parameters.
Note ``latest()`` exists purely for convenience and readability.
Note that ``earliest()`` and ``latest()`` exist purely for convenience and
readability.
earliest
~~~~~~~~
.. method:: earliest(field_name=None)
Works otherwise like :meth:`~django.db.models.query.QuerySet.latest` except
the direction is changed.
aggregate
~~~~~~~~~