Кэширование кверисетов Django при использовании пользовательского менеджера и свойств
У меня есть модель Django, которая использует свойства для получения "полей" при каждом вызове. Я сделал это вместо того, чтобы создавать их как значения базы данных, поскольку все эти "поля" вычисляются из полей модели и должны вычисляться на лету, когда это необходимо.
Поскольку они не существуют на уровне базы данных и не могут быть доступны через кверисет, я создал пользовательский менеджер с методами, которые просматривают все идентификаторы кверисета с условием требуемого свойства или свойств, а затем повторно просматривают кверисет для этих идентификаторов.
Происходит то, что результирующие наборы запросов полностью кэшируются, и любые обновления базовой базы данных не отражаются при обновлении представлений.
Я использую djange-tables2 и фильтры, поэтому представления в основном основаны на общих представлениях формы, вызывающих методы пользовательского менеджера в качестве ввода в переменную queryset.
Есть ли у кого-нибудь идеи, что я делаю неправильно? Любые указания будут высоко оценены.
Модель models.py выглядит следующим образом:
А views.py выглядит следующим образом: