[英]Django ORM - understanding foreign key queries
我正在優化查詢。 假設我有以下模型:
class Author(models.Model):
name = models.CharField(max_length=20)
class Book(models.Model):
name = models.CharField(max_length=20)
author = models.ForeignKey(Author)
一個簡單的任務是,假設我有作者ID,則獲取給定作者的所有書籍。
在標准SQL中,我只需要查詢books表。
但是在Django代碼中我這樣做:
# given authorID
author = Author.objects.get(pk=authorID)
books = Book.objects.filter(author=author)
這將需要兩個查詢。 如何避免第一次查詢?
嘗試類似:
Book.objects.filter(author_id=authorID)
這將返回作者的外鍵為authorID的所有書籍。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.