gpt4 book ai didi

python - django 和模型的属性

转载 作者:行者123 更新时间:2023-12-01 05:55:46 25 4
gpt4 key购买 nike

我有一个问题。这两个属性的工作方式是否不同以及如何工作,我的意思是数据库命中。例如,我们有模型 Article,它有一个 ForeignKey 字段 book

from django.db import models

class Article(models.Model):
book = models.ForeignKey("books.Book")

通过以下属性之一获得作者的最佳方式是什么:

@property
def author(self):
if self.book:
return self.book.author
return None

@property
def author(self):
book = self.book
if book:
return book.author
return None

最佳答案

由于您在 Article 上定义属性,因此实际的数据库命中取决于 Article 查询集的检索方式。如果您在 queryset 上使用 select_lated([深度=2])在检索 Article 对象时,无论您如何编写属性,这在数据库命中率方面都是最佳的。您列出的两种方式都有相似的性能。

关于python - django 和模型的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12671799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com