Django Advanced Tutorial: Ошибка при попытке запустить сервер или перенести приложение после успешной установки собственного пакета - PullRequest
0 голосов
/ 22 ноября 2018

Я следую расширенному учебнику по Django и мне удалось упаковать мое приложение для опросов в другой каталог за пределами каталога mysite.Я запускаю pip install --user django-polls/dist/django-polls-0.1.tar.gz внутри каталога, в котором находится мое приложение django-polls, и могу успешно его установить.Однако, когда я пытаюсь запустить python manage.py runserver в каталоге mysite, на моем терминале появляется следующее сообщение:

Traceback (most recent call last):
  File "manage.py", line 15, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/*USER*/django/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/Users/*USER*/django/django/core/management/__init__.py", line 357, in execute
    django.setup()
  File "/Users/*USER*/django/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/Users/*USER*/django/django/apps/registry.py", line 89, in populate
    app_config = AppConfig.create(entry)
  File "/Users/*USER*/django/django/apps/config.py", line 116, in create
    mod = import_module(mod_path)
  File "/Users/*USER*/anaconda3/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'polls.apps'

Я попытался запустить python manage.py migrate и получить то же самоесообщение.Может кто-нибудь объяснить, что здесь происходит?Я использую последнюю версию Django.

ОБНОВЛЕНИЕ: это приложения, установленные на моем settings.py

INSTALLED_APPS = [
    'polls.apps.PollsConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Я пытался использовать

INSTALLED_APPS = [
        'polls', ... 

, ноэто просто выдает другую ошибку, No module named 'polls.urls'

РЕДАКТИРОВАТЬ 2: Как указано ниже, моя схема каталога, я переместил папки django-polls и mysite в родительский каталог django-tutorial.Однако при запуске команды python manage.py runserver он ответил: /usr/bin/python: No module named django Затем я переустановил Django с помощью pip и переустановил модуль django-polls.Это казалось, чтобы решить проблему.Теперь я могу запустить команду python manage.py runserver и запустить мой проект, как и раньше.Я понятия не имею, что Django был удален с пути, по которому удалось вернуть его к работе.Спасибо всем за помощь!

django-tutorial
├── django-polls
│   ├── LICENSE
│   ├── MANIFEST.in
│   ├── README.rst
│   ├── dist
│   │   └── django-polls-0.1.tar.gz
│   ├── django_polls.egg-info
│   │   ├── PKG-INFO
│   │   ├── SOURCES.txt
│   │   ├── dependency_links.txt
│   │   └── top_level.txt
│   ├── docs
│   ├── polls
│   │   ├── __init__.py
│   │   ├── __pycache__
│   │   │   ├── __init__.cpython-36.pyc
│   │   │   ├── admin.cpython-36.pyc
│   │   │   ├── apps.cpython-36.pyc
│   │   │   ├── models.cpython-36.pyc
│   │   │   ├── tests.cpython-36.pyc
│   │   │   ├── urls.cpython-36.pyc
│   │   │   └── views.cpython-36.pyc
│   │   ├── admin.py
│   │   ├── apps.py
│   │   ├── migrations
│   │   │   ├── 0001_initial.py
│   │   │   ├── __init__.py
│   │   │   └── __pycache__
│   │   │       ├── 0001_initial.cpython-36.pyc
│   │   │       └── __init__.cpython-36.pyc
│   │   ├── models.py
│   │   ├── static
│   │   │   └── polls
│   │   │       ├── images
│   │   │       │   └── background.gif
│   │   │       └── style.css
│   │   ├── templates
│   │   │   └── polls
│   │   │       ├── detail.html
│   │   │       ├── index.html
│   │   │       └── results.html
│   │   ├── tests.py
│   │   ├── urls.py
│   │   └── views.py
│   └── setup.py
└── mysite
    ├── db.sqlite3
    ├── django-polls
    │   └── setup.py
    ├── manage.py
    ├── mysite
    │   ├── __init__.py
    │   ├── __pycache__
    │   │   ├── __init__.cpython-36.pyc
    │   │   ├── __init__.cpython-37.pyc
    │   │   ├── settings.cpython-36.pyc
    │   │   ├── settings.cpython-37.pyc
    │   │   ├── urls.cpython-36.pyc
    │   │   ├── urls.cpython-37.pyc
    │   │   ├── wsgi.cpython-36.pyc
    │   │   └── wsgi.cpython-37.pyc
    │   ├── settings.py
    │   ├── urls.py
    │   └── wsgi.py
    ├── polls
    │   └── views.py
    └── templates
        └── admin
            └── base_site.html

1 Ответ

0 голосов
/ 22 ноября 2018

Как выглядит ваш settings.py?Вы добавили опросы в свой INSTALLED_APPS?

INSTALLED_APPS = [
'polls',
....
]
...