1. ホーム
  2. django

django -- django.core.exceptions.AppRegistryNotReady: アプリはまだロードされていません。

2022-02-12 07:52:36
<パス

<センター 弱点がなく、鎧を必要としませんように


質問

今日、Django と、Django 独自の mod を使用する別のスクリプトを対話させる必要がありましたが、スクリプトを個別に実行する際にエラーが発生しました。

C:\ProgramData\Anaconda3\python.exe "E:/1. django-project/UserAdmin/monitor_admin/cars_operation.py"
Traceback (most recent call last):
  File "E:/1. django-project/UserAdmin/monitor_admin/cars_operation.py", line 14, in <module>
    from monitor_admin.models import CarLogModel
  File "E:\1. django-project\UserAdmin\monitor_admin\models.py", line 6, in <module>
    from express_admin.models import Car
  File "E:\1. django-project\UserAdmin\express_admin\models.py", line 8, in <module>
    class Line(models.Model):
  File "C:\ProgramData\Anaconda3\lib\site-packages\django\db\models\base.py", line 100, in __new__
    app_config = apps.get_containing_app_config(module)
  File "C:\ProgramData\Anaconda3\lib\site-packages\django\apps\registry.py", line 244, in get_containing_app_config
    self.check_apps_ready()
  File "C:\ProgramData\Anaconda3\lib\site-packages\django\apps\registry.py", line 127, in check_apps_ready
    raise AppRegistryNotReady("Apps aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.


解決方法

  1. マスタープロジェクトのurls.pyの下に追加します。
import os
import django

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "UserAdmin.settings")
django.setup()

  1. 別途実行が必要なスクリプトで、この urls.py ファイルをインポートします。

  2. 以下のような場合に最適です。