2017-09-12 9 views
0

ロードされていない私は、1.9バージョンに私のプロジェクトを移行していて、実行しようとするには、ことを私に与えたとき:1.9 AppRegistryNotReadyをジャンゴへのアップグレード:アプリがまだ

Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 350, in execute_from_command_line 
    utility.execute() 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 324, in execute 
    django.setup() 
    File "/usr/local/lib/python2.7/dist-packages/django/__init__.py", line 18, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 85, in populate 
    app_config = AppConfig.create(entry) 
    File "/usr/local/lib/python2.7/dist-packages/django/apps/config.py", line 90, in create 
    module = import_module(entry) 
    File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/home/prueba/djcode/spid/preventivos/__init__.py", line 6, in <module> 
    from django.contrib.auth.models import User 
    File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/models.py", line 4, in <module> 
    from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager 
    File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/base_user.py", line 49, in <module> 
    class AbstractBaseUser(models.Model): 
    File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py", line 94, in __new__ 
    app_config = apps.get_containing_app_config(module) 
    File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 239, in get_containing_app_config 
    self.check_apps_ready() 
    File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 124, in check_apps_ready 
    raise AppRegistryNotReady("Apps aren't loaded yet.") 
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet. 
+0

はあなたのmodels.pyを示してもらえますか? – zaidfazil

+0

'preventivos/__ init __。py'ファイルに' django.contrib.auth.models import User 'が必要なのはなぜですか? – zaidfazil

+0

リンクが機能していません(ドメイン内の%29を削除します) – Bestasttung

答えて

0

物事はジャンゴ< 1.9以降に変更されました。私はDjango 1.6から1.9へのアップグレード中に同じ問題を抱えていました。これは私を助けてくれました:

に複数のインストールされたアプリケーションを同じラベルにすることはできなくなりました。 Djangoの以前のバージョンでは、これは必ずしも が正しく動作するとは限りませんでしたが、どちらかがクラッシュすることはありませんでした。

同じラベルを持つ2つのアプリがある場合は、そのうちの1つに AppConfigを作成し、そのラベルを上書きする必要があります。 このアプリケーションを参照するか、または モデルを古いラベルで参照する場合は、コードを調整する必要があります。

別の パスを使用して同じモデルを2回インポートすることはできません。 Django 1.6以降では、 を手動でPYTHONPATHにディレクトリとサブディレクトリを置く場合にのみ発生する可能性があります。 移行手順の1.4リリースノートの新しいプロジェクトレイアウトのセクションを参照してください。

あなたはことを確認する必要があります。

  • すべてのモデルはINSTALLED_APPSに記載されているか、明示的なapp_labelを持っているアプリケーションで定義されています。
  • モデルは、アプリケーションのロードの副作用としてインポートされません。具体的には、アプリケーションのルート モジュールまたは 構成クラスを定義するモジュールにモデルをインポートしないでください。 Djangoは、非推奨期間の後、 バージョン1.9のこれらの要件を適用します。

出典:http://django.readthedocs.io/en/latest/releases/1.7.html#standalone-scripts

関連する問題