私のデータベースには、次のように説明するいくつかの関係があります。
@property
def translations(self):
"""
:return: QuerySet
"""
if not hasattr(self, '_translations'):
self._translations = ClientTranslation.objects.filter(base=self)
return self._translations
hasattr()
との背後にある考え方self._translation
は、dbを1回だけヒットさせ、2回目は保存されたプロパティが返されるようにすることです。
ただし、ドキュメントを読んだ後、コードがそれを行っているかどうかはわかりません-クエリは値が本当に必要なときにのみデータベースにヒットするため-これは私のコードの後にあります。
正しいアプローチはどのように見えますか?