Django ORM - Obtener el último registro para el grupo

Imagina que tenemos el modelo Django ORM.Meetup con la siguiente definición:

class Meetup(models.Model):
    language = models.CharField()
    date = models.DateField(auto_now=True)

Me gustaría buscar el último encuentro para cada idioma.

Parece que podrías usarDjango Agregados para hacer esta búsqueda fácil:

Meetup.objects.annotate(latest_date=Max("date")).values("language", "latest_date")

En mi opinión, esto debería obtener el "último" encuentro para cada idioma. Pero ese no es el caso:

>>> Meetup.objects.create(language='python')
<Meetup: Meetup object>
>>> Meetup.objects.create(language='python')
<Meetup: Meetup object>
>>> Meetup.objects.create(language='node')
<Meetup: Meetup object>
>>> Meetup.objects.create(language='node')
<Meetup: Meetup object>
>>> Meetup.objects.annotate(latest_date=Max("date")).values("language", "latest_date").count()
4

¡Esperaba conseguir solo las dos últimas reuniones de Python y Node!

¿Cómo puedo crear una consulta que solo obtenga las últimas reuniones para cada idioma?

PD. Estoy usando MySQL como mi backend.

Respuestas a la pregunta(1)

Su respuesta a la pregunta