Ich habe ein Modell 'VehicleDetails' erstellt, in dem ein Benutzer die Details eines Fahrzeugs und ein anderes Modell 'TripStatus' ausfüllen kann, in dem er den Fahrzeugstandort aktualisiert. Ich wollte den neuesten Ort, für den ich wie in meinem unteren Code getan habe. Ich verwende prefetch_related in meiner Sicht, um die Standortwerte für ein bestimmtes Fahrzeug zurückzugeben. Aber nach dem Ausführen des Servers wird ein Fehler ausgegeben: "TripStatus-Objekt hat kein Attribut 'prefetch_related'". Ich würde mich freuen, mir dabei helfen zu können. models.py:Python/Django: Modell Objekt hat kein Attribut 'prefetch_related'
class VehicleDetails(models.Model):
Vehicle_No = models.CharField(max_length=20)
class TripStatus(models.Model):
vehicledetails = models.ForeignKey(VehicleDetails, related_name='statuses')
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)
views.py:
def status(request):
tripstatus = TripStatus.objects.all().latest('statustime').prefetch_related('statuses')
context = {
"tripstatus": tripstatus,
}
return render(request, 'loggedin_load/active_deals.html', context)
Vorlage:
{% for status in vehicledetails.statuses.all %}
{{status.Vehicle_Status}}
{% endfor %}
seine jetzt: Kann nicht 'Status' auf TripStatus Objekt finden 'Status' ist ein ungültiger Parameter prefetch_related(). – sumanth
pefetch_related lädt Fremdschlüssel-Tabellen für die Leistung. Sie haben keinen Status-Fremdschlüssel in Ihren TripStatus-Modellen. Entfernen Sie einfach den Prefetch-Aufruf. –