2016-04-07 27 views
0

applicationsディレクトリにアプリケーションがインストールされているディレクトリ構造を持つMyProjectというプロジェクトがあります。Django 1.9 ImportError:モジュールに 'appname'という名前のシェルがありません

. 
├── myapp 
│   ├── __init__.py 
│   ├── __init__.pyc 
│   ├── settings.py 
│   ├── settings.pyc 
│   ├── urls.py 
│   ├── urls.pyc 
│   ├── wsgi.py 
│   └── wsgi.pyc 
├── applications 
│   └── polls 
│    ├── admin.py 
│    ├── apps.py 
│    ├── __init__.py 
│    ├── models.py 
│    ├── tests.py 
│    └── views.py 
├── db.sqlite3 
├── manage.py 
└── wsgi 
    ├── static 
    │   └── keep.me 
    └── wsgi.py 

polls/apps.py内容は

from __future__ import unicode_literals 

from django.apps import AppConfig 


class PollConfig(AppConfig): 
    name = 'applications.polls' 

polls/__init__.pyコンテンツ、

default_app_config='applications.polls.apps.PollConfig' 

や設定でINSTALLED_APPS

INSTALLED_APPS = [ 
    ...... 
    ...... 
    'applications.polls' 
] 

シェルですスローImportError: No module named polls

どうすれば修正できますか?

ありがとうございます。

更新(トレースバックが追加されます)

Traceback (most recent call last): 
    File "<input>", line 5, in <module> 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/__init__.py", line 18, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate 
    app_config = AppConfig.create(entry) 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/apps/config.py", line 123, in create 
    import_module(entry) 
    File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/opt/pycharm-5.0.3/helpers/pydev/pydev_import_hook.py", line 21, in do_import 
    module = self._system_import(name, *args, **kwargs) 
ImportError: No module named polls 

更新:Pythonのmanage.pyシェルトレースバック

Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line 
    utility.execute() 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 345, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/core/management/base.py", line 348, in run_from_argv 
    self.execute(*args, **cmd_options) 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/core/management/base.py", line 399, in execute 
    output = self.handle(*args, **options) 
    File "/home/marty/.virtualenvs/dj19/local/lib/python2.7/site-packages/django/core/management/commands/shell.py", line 101, in handle 
    code.interact(local=imported_objects) 
AttributeError: 'module' object has no attribute 'interact' 

答えて

3

あなたは、パッケージ/モジュールとしてそれを使用するアプリケーションディレクトリの下に__init__.pyファイルを作成する必要があります。

あなたがdjango shellを意味するか、あなただけのpythonシェルの中から自分のアプリで仕事をしたいならば、あなたは最初import djangoに持っているならば、django.setup()を呼び出し、またapplications/__init__.py

+0

またはINSTALLED_APPSには、「投票」があります。 – harryr

+0

OPはすべてのアプリケーションを格納するために単一のパッケージを使用しています。そのため、彼は 'applications.polls'を使用しています。 – v1k45

+0

おっと、それはちょうどタイプミスです。実際にそこにはinitファイルがあります。他のアプリは省略されています。 '__inti __。py'でも同じエラーが出ます。 – Marty

0

という名前のファイルを作成します。

+0

私は' python manage.py shell'を意味します。 – Marty

+0

これは 'django shell'とも呼ばれて申し訳ありません。 – sehrob

+0

アプリケーションフォルダに '__init __。py'を追加しようとしましたか?また、 'code'は組み込みのモジュールで、' interact'メソッドを持っています。だからあなたのpythonのインストールでは何も問題ありませんか? – sehrob

関連する問題