簡體   English   中英

Django ORM-了解外鍵查詢

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM