Куда поместить код, который взаимодействует с DB и должен запускаться один раз при старте проекта в django 2.2 или выше?

Я пытаюсь написать код, который проверяет что-то, если существует, то охлаждает, а если нет, то создает его.

Проблема в том, куда поместить этот код? Django не рекомендует размещать что-либо, что имеет дело с DB в функции приложения ready()- это то, что я сейчас делаю, но это дает мне ошибку при отладке и дает ошибку также в начале, но работает позже -.

Кроме того, то, что я нашел, кажется устаревшим и немного халтурным, например, поместить его в urls.py или wsgi.py.

Я чувствую, что должен быть лучший способ сделать это.

Спасибо вам всем.

Обычно взаимодействие с БД в приложениях Django происходит в файле views.py. Я бы предложил написать представление, которое использует метод модели get_or_create.

Вот документация: https://docs.djangoproject.com/en/3.2/ref/models/querysets/#get-or-create

Вернуться на верх