Django:如何检索创建的最新对象

Aka*_*007 1 django django-models

我想检索为特定用户创建的最新对象.

假设我有一个模型:

class LogBookPreTransaction(models.Model):
    person = models.ForeignKey(User)
    code = models.CharField(max_length=20)
    address = models.CharField(max_length=200,null =True)
    pincode = models.CharField(max_length=20,null =True)
Run Code Online (Sandbox Code Playgroud)

现在我想检索为user ="X"创建的最新对象.我们怎么做?

transaction_obj = LogBookPreTransaction.objects.filter(user = "x").latest()

当然这不起作用,但我想要这样的东西.问题清楚了吗?

nem*_*ign 6

如果您有日期字段,则可以使用最新版本,您可以尝试使用最新字段:

LogBookPreTransaction.objects.filter(user = "x").latest('datetime')
Run Code Online (Sandbox Code Playgroud)

试试这个,当你没有日期字段时它会很有用:

LogBookPreTransaction.objects.filter(user = "x").order_by('-id')[0]
Run Code Online (Sandbox Code Playgroud)