Согласно этому ответу ( сценарий Django для доступа к объектам модели без использования оболочки manage.py ), прежде чем я смогу использовать модели Django в своем автономном скрипте Python, достаточно указать его в файле настроек проекта:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_project.settings")
from my_app.models import MyModel
Это приводит к ошибке:
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
Это, однако, работает просто отлично:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_project.settings")
import django
django.setup()
from my_app.models import MyModel
Я использую Django 2.1.7
Требуется ли сейчас использовать django.setup()
в каждом сценарии, где я использую модели Django?