[英]Django/Python: How to get the latest value from a model queryset?
我创建了一个模型“VehicleDetails”,用户可以在其中填写车辆的详细信息,以及另一个模型“TripStatus”,他可以在其中更新车辆位置。 我想获得我在下面的代码中所做的最新位置。 但是当我运行服务器时,它返回所有值而不是最新值。 我很感激帮助我解决这个问题或提出一种新方法。
模型.py:
class VehicleDetails(models.Model):
Vehicle_No = models.CharField(max_length=20)
class TripStatus(models.Model):
vehicledetails = models.ForeignKey(VehicleDetails, related_name='tripstatuss')
CHOICES = (('Yet to start', 'Yet to start'),('Trip starts', 'Trip starts'), ('Chennai','Chennai'), ('Vizag', 'Vizag'), ('Kolkata', 'Kolkata'))
Vehicle_Status = models.CharField(choices=CHOICES, default="Yet to start", max_length=20)
statustime = models.DateTimeField(auto_now=False, auto_now_add=True)
意见:
def status(request):
tripstatus = TripStatus.objects.all().latest('statustime')
context = {
"tripstatus": tripstatus,
}
return render(request, 'loggedin_load/active_deals.html', context)
模板:
{% for status in vehicledetails.tripstatuss.all %}
{{status.Vehicle_Status}}
{% endfor %}
应该只需要删除 .all():
tripstatus = TripStatus.objects.latest('statustime')
或者可能:
tripstatus = TripStatus.order_by('-statustime').first()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.