2
haben ein Modell und Inline-Modell .. Ich muss ein Abfrage-Set erstellen, die Daten aus dem Inline-Modell abruft und eine For-Schleife in einer Vorlage zurückgibt .. Sieht aus wie mein Code nicht funktioniert ..Kann jemand helfen?For loop queryset von Inline-Modell
class Account(models.Model):
uuid = ShortUUIDField(unique=True)
name = models.CharField(max_length=80)
desc = models.TextField(blank=True)
address_one = models.CharField(max_length=100)
def __str__(self):
return u"%s" % self.name
class Rates(models.Model):
airline = models.CharField(max_length=30, blank=True, verbose_name= 'AIRLINE')
dest = models.CharField(max_length=3,blank=True,verbose_name= 'DEST')
name= models.ForeignKey (Account, default = False, related_name="rates")
def __str__(self):
return self.airline
My for loop should retrieve all rates in case account name is XXX
def rates_acc(request, account):
account = Account.objects.get(name = xxx)
rates = [x for x in account.rates.all()]
context = {
'rates': Account.objects.filter (name__name__icontains = 'xxx'),
}
return render(request,'accounts/account.html',context)
Ich verstehe nicht, warum die Ansicht Konto patameter bekommt - Sie tun nichts damit. Das Problem mit Ihrem Code ist die .filter(), das Feld "Name" im Account-Modell ist kein Fremdschlüssel. Sie können also die __-Notation nicht verwenden. Wenn ich das verstehe, sollten Sie stattdessen rates.objects.filter (..) ändern. Wenn nicht, bitte erläutern Sie, welche Datensätze Sie abfragen möchten – user3599803