6

私が使うとき

from django.contrib.gis.db import models

エラーが発生します:

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    from django.contrib.gis.db import models
  File "C:\Python27\lib\site-packages\django\contrib\gis\db\models\__init__.py"
, line     2, in <module>
    from django.db.models import *
 File "C:\Python27\lib\site-packages\django\db\__init__.py", line 11, in <module>
   if DEFAULT_DB_ALIAS not in settings.DATABASES: 
  File "C:\Python27\lib\site-packages\django\utils\functional.py", line 184,
 in inner
   self._setup()
  File "C:\Python27\lib\site-packages\django\conf\__init__.py", line 40,
 in _setup
     raise ImportError("Settings cannot be imported, because environment 
variable %s 
is    undefined." % ENVIRONMENT_VARIABLE)
ImportError: Settings cannot be imported, because environment variable   
DJANGO_SETTINGS_MODULE is undefined.

それを修正する方法??

使用時

from django.db import models

ジャンゴは問題なく動作します

4

2 に答える 2

4

これを修正するには、次の 2 つの方法があります。

  1. settingsモジュールを追加DJANGO_SETTINGS_MODULEして、それを指すように設定する必要があります。または
  2. env 変数settings.configureをバイパスするために使用します。DJANGO_SETTINGS_MODULE

2 番目の方法はdjango、プロジェクトに必要なすべてを実際に設定せずに、 の一部を使用するのに適しています。

于 2013-01-17T23:53:17.627 に答える
2

gis.db あなたの質問では必須ではありません。

両方のインポートコマンドの違いは、空のファイルのインポート以外のものをインポートdjango.contrib.gis.db.modelsする前に行わないため、コンテキスト、つまり実行方法のみです。django.db.models__init__.py

正しい環境で何かをテストする最も簡単な方法は、管理コマンドを使用することです。

$ python manage.py shell
# now you are sure that django.conf settings have been imported
>>> from django.contrib.gis.db import models
>>> from django.db import models
# Both will equally succeed (or maybe fail for another reason)

(同様の質問Django documentation: Models; error from line 1 of code )

于 2013-01-18T16:56:53.157 に答える