私は、ユーザーが車両の詳細を記入できるモデル 'VehicleDetails'と、車両位置を更新できる別のモデル 'TripStatus'を作成しました。私は私の下のコードのように私がした最新の場所を取得したい。しかし、私はサーバーを実行すると、最新の値ではなくすべての値を返します。私はこれを解決するか、新しいアプローチを提案することに感謝します。Django/Python:モデルクエリーセットから最新の値を取得するには?
models.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 %}
問題の提示されていないコードの重要な部分がいくつかあります。 'tripstatus'をテンプレートに渡しますが、あなたが渡さなかった' vehicledetails.statuses'をループしているテンプレートに入れます。 –