ich habe:Python verschachtelte Schleife berechnet Summe
models.py
class Plant(models.Model):
plant_name = models.CharField()
multiplier = no_recording = models.PositiveIntegerField(default=1)
class Recording(models.Model)
plant = models.ForeignKey(Plant, on_delete=models.CASCADE)
no_recording = models.PositiveIntegerField(default=1)
def x(self):
return self.no_recording*self.plant.multiplier
ich brauche: die Summe von x für jede Pflanze. Was ich aus meiner Sicht versucht habe, ist dies, tut es aber nicht. Ich erhalte die Objekt ‚Aufnahme‘ hat kein Attribut ‚Aggregat‘
views.py
def home(request):
plants = Plant.objects.all()
total_recording_per_plant = []
for plant in plants
for recording in plant.recording_set.all():
total_recording_per_plant.append(recording.aggregate(sum=Sum('x')))
aber ich erhalte die ‚Aufnahme‘ Objekt kein Attribut ‚Aggregat‘
erhalte ich: ' 'Wie kann ich nur die Summe bekommen ?? –
George
Von all den Dingen? Dann entfernen Sie die Werte (Pflanze) – wrdeman
meine ** views.py ** 'def home (Anfrage): Pflanzen = Plant.objects.all() total_recording_per_plant = [] für Anlage in Pflanzen total_recording_per_plant = Recording.Objects. Werte ("Pflanze"). Annotate (Summe = Summe (F ("no_recording") * F ("plant__multiplier"))) ** und in meiner HTML-Vorlage ** '{% für Pflanze in Pflanzen%} total_recording_per_plant} } {% endfor%} 'und ich bekomme, was ich in meinem ersten Kommentar geschrieben habe – George