Ich habe 2 Klassen:Wie kann man Daten eines Fremdschlüssels im Django-Modell mit einem einzigen Anruf abrufen?
class Author(models.Model):
name = models.CharField(max_length=250, null=True)
location = models.CharField(max_length=250, null=True)
class Book(models.Model):
author = models.ForeignKey(Author, null=True, related_name="book")
no_of_pages = models.IntegerField(null=True)
genre = models.CharField(max_length=250, null=True)
Ich mag den Autor Daten von Buch können, Zugriff auf einen einzigen Anruf verwenden. ZB:
books = Book.objects.filter(genre="fiction")
for book in books:
print book.author.name, book.author.location
Wie ich verstehe, hat diese db mehrmals getroffen. Gibt es eine Möglichkeit, die Daten des Autors mit einem einzigen Anruf zu erhalten?
Es trifft nur die DB mehrmals, weil Sie in einer for-Schleife sind. Sie haben mehrere Bücher herausgefiltert, damit Sie mehrere Autoren durchlaufen können. – marcusshep