Привет всем, я в настоящее время использую @cached_property в классе модели и плохо люблю его удалять при сохранении, чтобы его можно было повторно заселить при следующем вызове, как я это делаю. Пример:
class Amodel():
#...model_fields....
@cached_property
def db_connection(self):
#get some thing in the db and cache here
instance = Amodel.objects.get(id=1)
variable = instance.db_connection
Amodel.objects.select_for_update().filter(id=1).update(#some variable)
#invalidate instance.db_connection
#new_variable = instance.db_connection
благодаря