2017-07-29 30 views
1

Running Python3.6.2。 3行までprocess_sqs_messages.pyマイコード:ModuleNotFoundError: 'xyz'という名前のモジュールがありません

Traceback (most recent call last): 
File "bin/process_sqs_messages.py", line 3, in <module> 
    from xyz.settings import SQS_QUEUE_NAME 
ModuleNotFoundError: No module named 'xyz' 

ディレクトリ構造:

Project 
|  
+-- bin 
| | 
| +-- process_sqs_messages.py 
|  
+-- xyz 
| | 
| +-- __init__.py 
| +-- settings.py 

マイインストール済みのアプリケーション:

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'xyz', 
] 
ここ

​​

は私のスタックトレースです

誰かがなぜ私はgだ知っているこのエラーを表示していますか?あなたはこの

from django.conf import settings 

    if settings.DEBUG: 
     # Do something 
+0

あなたは 'のpython manage.pyのshell'と'輸入xyz'をやってみましたかそれはいくつかの手がかりを提供するかもしれません。 – FlipperPA

+0

'' 'python manage.py shell'''がこのエラーを生成しました ' '' django.core.exceptions.ImproperlyConfigured:USE_I18Nの設定を要求されましたが、設定が構成されていません。 私は、 '' export DJANGO_SETTINGS_MODULE = "xyz.settings" '' 'をmy virtualenv bin/activateファイルに追加しました。そのエラーは修正されましたが、元のエラーは引き続き発生します。 – Chris

+0

'' 'python manage.py shell' ''を実行してから '' xyz'''をインポートしてもうまく動作しましたが、シェルの外では動作しません...まだxyzモジュールが見つかりません – Chris

答えて

0

は、私はそれが動作するようになったが、私は理由を知りません。うまくいけば、誰かが解決策を明らかにすることができます。私はこのエラーを修正しようとしているWebをブラウズしていました。

は、私が最初にここだ(私はその後、私はその後、 python setup.py installを走り、

#!/usr/bin/env python 

from distutils.core import setup 

setup(name='xyz', 
    version='0.1.0', 
    description='XYZ', 
    author='Chris', 
    author_email='[email protected]', 
    url='http://www.none.com/', 
    packages=['xyz', ], 
) 

setup.pyファイルにこのコードを追加

Project 
|  
+-- setup.py 

ので、プロジェクトレベルでsetup.pyファイルを作成しました私は迷子になった)、それはパッケージをインストールしました。ビルドディレクトリ、卵情報、私のvirtualenvの下のサイトパッケージなどを作成しました。

最後に私はコマンドpython bin/process_sqs_messages.pyを実行して成功しました。エラーはありません。

あなたは私と他の人を助けることができる場合、私はできないので、私が何をしたかを説明/コメントしてください:?/

+0

いいえ、同じエラーが発生します。私はルールが適用されると確信していますが、私のxyzは、 '' '__init __。py'''を持つアプリです。 – Chris

0

のような設定モジュールにアクセスする必要がDjango docs

Note that django.conf.settings isn’t a module – it’s an object. So importing individual settings is not possible

from django.conf.settings import DEBUG # This won't work. 

から

+0

' PYTHON_PATH'の何かがクリックされていないように聞こえます。このコマンドで 'python setup.py install'を実行すると、' virtualzv'のサイトパッケージディレクトリに 'xyz'パッケージが追加されました。 Djangoプロジェクトの 'xyz'アプリに変更を加えると、その変更は反映されません。まず、 'PYTHON_PATH'の値を調べて、' virtualenv'を削除して再作成しようと思いますか? – FlipperPA

関連する問題