19

最近、Django-1.5b1をインストールしました。私のシステム構成:

  • OSX 10.8
  • Python 2.7.1
  • Virtualenv 1.7.2

django-admin.pyコマンドを呼び出すと、次のエラーが発生します

(devel)ninja Django-1.5b1: django-admin.py 
Usage: django-admin.py subcommand [options] [args]

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Print traceback on exception
  --version             show program's version number and exit
  -h, --help            show this help message and exit
Traceback (most recent call last):
  File "/Users/sultan/.virtualenvs/devel/bin/django-admin.py", line 5, in <module>
    management.execute_from_command_line()
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 452, in execute_from_command_line
    utility.execute()
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 375, in execute
    sys.stdout.write(self.main_help_text() + '\n')
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 241, in main_help_text
    for name, app in six.iteritems(get_commands()):
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 108, in get_commands
    apps = settings.INSTALLED_APPS
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 52, in __getattr__
    self._setup(name)
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 47, in _setup
    self._wrapped = Settings(settings_module)
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 132, in __init__
    raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'settings' (Is it on sys.path?): No module named settings

誰かが同じエラーを持っていましたか?誰かがそれをアドバイスしたり助けたりできますか?

ありがとう、

スルタン

4

5 に答える 5

35

新しいプロジェクトを開始したときに同じ問題が発生しました。コマンドプロンプトで次のコマンドを実行することで問題を解決しました。

export DJANGO_SETTINGS_MODULE=

このようにして、 virtualenvの使用を開始する前に設定した " settings"ファイル(を使用して検出)を指している変数の設定を解除しました。env | grep DJANGO_SETTINGS_MODULE

変数の設定を解除した後、django-admin.pyスクリプトは魅力のように機能しました!

于 2013-06-20T14:02:45.907 に答える
14

私はあなたと同じ問題を抱えていましたが、次のようにプロジェクトフォルダをPYTHONPATHの前に追加する以外に適切な修正を思いつきませんでした。

export PYTHONPATH="/absolute/path/to/django/project/folder:$PYTHONPATH"

<project>がいる場所/absolute/path/to/django/project/folder/<project>exportそのコマンドをスクリプトの最後に追加してenv/bin/activate、virtualenvを初期化するたびに実行されるようにします。

2つの状況の唯一の違いは、単一のsettings.pyモジュールではなく、複数の設定ファイルを使用することです。

django-admin.py次のように、Djangoプロジェクトを含むフォルダーから呼び出すこともできます。

python ~/.virtualenvs/devel/bin/django-admin.py <command>

これにより、現在の作業ディレクトリがパスの一部として認識されます。

それが理にかなっていることを願っています。答えを探すのが難しい理由を説明するのはちょっと不器用です。

于 2013-02-21T06:03:19.197 に答える
1

おそらくあなたの問題はこれに関連しています: スクリプトヘッダーの間違ったPythonパス

venv内に新しいdjangoプロジェクトを作成する以外のことをしたい場合は、呼び出す必要がありますpython manage.py(もちろん、whereis pythonvenv実行可能ファイルを返す必要があります)

于 2012-12-09T03:53:40.683 に答える
0

djangoライブラリへの直接パスからスクリプトを実行しないでください。他のパスから実行します。cddjangoがインストールされている(またはダウンロードして展開した)ディレクトリに移動し、そこからコマンドを実行したようです。

だからこれを試してみてください:

(devel)ninja Django-1.5b1: cd 
(devel)ninja: django-admin.py startproject foo
于 2012-12-09T04:01:13.377 に答える
-2

virtualenv djangoインストールからdjango-adminを開始してもよろしいですか?おそらくpath/to / virtualenv / bin / django-admin.py

于 2012-12-08T09:52:59.070 に答える