Как перезагрузить глобальные переменные на каждом обновлении страницы в DJango - PullRequest
0 голосов
/ 04 июня 2009

Вот моя проблема. DJango продолжает хранить все глобальные объекты после первого запуска скрипта. Например, объект, который вы создаете в глобальном представлении views.py, будет там до тех пор, пока вы не перезапустите сервер приложений. Это нормально, если ваш объект не привязан к какому-либо внешнему ресурсу, который может истечь. Теперь я думал, что исправить - это какой-то фабричный метод, который проверяет, создан ли объект и создает его, если это не так, и затем возвращает его. Однако это не удается, поскольку объект существует там с момента последнего запроса страницы, поэтому метод фабрики всегда возвращает объект, экземпляр которого был создан во время первого запроса.

То, что я ищу, - это способ инициировать что-то для каждого запроса. Я видел способы сделать это путем внедрения вашего собственного промежуточного программного обеспечения, но я думаю, что это излишне. Кто-нибудь знает о некоторых зарезервированных методах или некоторых других для каждого запроса триггера.

1 Ответ

6 голосов
/ 04 июня 2009

Простой: не используйте глобальные объекты. Если вам нужен объект внутри представления, создайте его экземпляр внутри представления, а не как глобальный. Таким образом, он будет собран после окончания представления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...