8

私はpython2.7とvirtualenv/virtualenvwrapperを使用してubuntuで作業している多くのプロジェクトを持っています.私の仕事では、一部の開発者はmacosxとwindowsで作業しています.通常、私はいつものようにプロジェクトを作成します:

django-admin.py start project x

そして、cvs に svn を使用しますが、ある時点で、次のようなことを試してみると、合理的なものは何もありません。

python manage.py runserver

動作しませんが、私だけのものであり、ラップトップにあり、プロダクションサーバーや他の開発者では起こりません.

何か案は?

このエラーが発生しました:

エラー: 「manage.py」を含むディレクトリにファイル「settings.py」が見つかりません。いろいろとカスタマイズされているようです。django-admin.py を実行して、設定モジュールを渡す必要があります。(ファイル settings.py が実際に存在する場合、何らかの形で ImportError が発生しています。)

しかし、明らかに、設定ファイルが存在し、manage.pyファイルと同じフォルダーにあり、私だけでは機能しません...

これはdjangoとappengineでも起こります

4

3 に答える 3

29

このエラーが発生しました:

エラー: 「manage.py」を含むディレクトリにファイル「settings.py」が見つかりません。いろいろとカスタマイズされているようです。django-admin.py を実行して、設定モジュールを渡す必要があります。(ファイル settings.py が実際に存在する場合、何らかの形で ImportError が発生しています。)

manage.pyスクリプトは、インポート エラーが発生するたびにその警告を出力するため、モジュールsettings.pyが何かをインポートしインポートエラーが発生した場合でも、その警告が出力されmanage.pyます。

診断する 1 つの方法は、(一時的に) 変更することmanage.pyです。

#!/usr/bin/env python
from django.core.management import execute_manager
try:
    import settings # Assumed to be in the same directory.
except ImportError:
    import sys
    sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
    sys.exit(1)

if __name__ == "__main__":
    execute_manager(settings)

#!/usr/bin/env python
from django.core.management import execute_manager
import settings # Assumed to be in the same directory.

if __name__ == "__main__":
    execute_manager(settings)

実行時に出力されるスタック トレースを参照してください$ python manage.py runserver

于 2011-05-17T21:06:15.903 に答える
3

http://www.allbuttonspressed.com/projects/djangoappengineのガイドに従いながら、django と appengine の使用を開始しようとしたときにこのエラーが発生した場合

フォルダーへのシンボリックリンクを作成した場合、djangoappengine シンボリックリンクの作成中にガイドが間違っています。たとえば、1つのディレクトリに移動する必要があります

いいえ:

次のフォルダーをプロジェクト (django-testapp など) にコピーします。

django-nonrel/django => <project>/django
djangotoolbox/djangotoolbox => <project>/djangotoolbox
django-autoload/autoload => <project>/autoload
django-dbindexer/dbindexer => <project>/dbindexer
djangoappengine => <project>/djangoappengine

修繕:

次のフォルダーをプロジェクト (django-testapp など) にコピーします。

django-nonrel/django => <project>/django
djangotoolbox/djangotoolbox => <project>/djangotoolbox
django-autoload/autoload => <project>/autoload
django-dbindexer/dbindexer => <project>/dbindexer
djangoappengine/djangoappengine => <project>/djangoappengine

最後の行に注目してください。

于 2012-11-12T14:08:38.587 に答える
1

これに出くわすまで、djangoコードを1時間調べました。

manage.py [command] --traceback

私のアプリの奥深くにインポートエラーがあったことがわかりました。エラーが表示されると、修正に 10 秒かかりました。:/

于 2012-11-09T01:23:56.030 に答える