в django, выполнение кода только один раз во время запуска может быть общим требованием. Давайте рассмотрим решение, которое гарантирует, что код выполняется только во время начального запуска сервера, а не по последующим запросам.
Первоначально решение, предложенное в связанном вопросе, дважды подняло сообщение «Hello World» в терминале. Проблема заключается в использовании исключительного исключения MiddleWareNotusted для прекращения выполнения промежуточного программного обеспечения.
, начиная с Django 1.7, для решения этой проблемы был представлен выделенный крюк. Переоценивая метод готового в классе приложения вашего приложения, вы можете указать код только для запуска. Этот подход более чистый и более четкий, чем использование промежуточного программного обеспечения.
для версий Django до 1.7, размещение кода запуска в файле __init__.py одного из ваших установленных_аппов оказалось эффективным. Этот код будет выполнен, когда приложение будет сначала загружено, гарантируя, что оно работает только один раз. импортировать your_module your_module.initializer ()
обратите внимание, что при использовании команды Runserver. Однако в типичных сценариях развертывания или во время автоматических перезагрузков с помощью Runserver, код будет выполняться только один раз.
]Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3