【发布时间】:2021-01-18 16:21:38
【问题描述】:
拥有模型:
class Book(models.Model):
name = models.CharField(max_length=255)
class Page(models.Model):
text = models.TextField()
page_number = models.PositiveSmallIntegerField()
book = models.ForeignKey(Book, on_delete=models.CASCADE)
我想根据更改的页码使用 selected_page 注释书籍。
没有要求页码的书籍将有book.selected_page == None:
page_number = get_page_number()
books = Book.objects.annotate(???)
# smthing like: Book.objects.annotate(selected_page=Page.objects.filter(page_number=page_number).first())
for book in books:
if book.selected_page:
print(book.selected_page.text)
【问题讨论】:
标签: python django django-models django-orm