Django模型最新外国记录

时间:2014-11-22 06:12:11

标签: django django-models

从Django模型中,如何获得所有这些片段 a的完整列表,其中仅包含最新的修订版外键?

可能会有一个包含5个修订版的片段,但我只想要最新版本。

# models.py
class Revision(models.Model):
    slug = models.CharField(max_length=16)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

class Snippet(models.Model):
    user = models.ForeignKey(User)
    revision = models.ForeignKey(Revision)

# views.py
def a_view(request):
    Snippets.objects.all().filter(user=request.user)

我无法找到说.filter(revision__max=id)的方法。我实际上不知道该怎么做,因为我认为当我想到它时,我可能会错误地设计模型。

1 个答案:

答案 0 :(得分:4)

您可以使用latest()

Snippets.objects.filter(user=request.user).latest('revision__created_at')