Напишите запрос django для выбора пользователей и упорядочивания пользователей по последнему разговору, который они вели?

Мои модели:

class User(models.Model):
    id = models.UUIDField(primary_key=True)
    first_name = models.Charfield()

class Conversation(models.Model):
    id = models.UUIDField(primary_key=True)
    user = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
 
class Message(models.Model):
    id = models.UUIDField(primary_key=True)
    conversation = models.ForeignKey(Conversation, on_delete=models.PROTECT, null=False)
    text = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True, blank=True)

Я пытался упорядочить их, добавив аннотацию и добавив порядок по. Может ли кто-нибудь помочь мне выбрать всех пользователей и упорядочить их по последнему сообщению. Мне нужен пользователь с последним сообщением в пункте to и затем соответственно.

Попробуйте это

queryset = User.objects.all().order_by(
    '-conversation__message__created_at'
    ).distinct()
Вернуться на верх