Управление Django ImportError.py во время развертывания

#python #django #deployment

#python #django #развертывание

Вопрос:

Я пытаюсь развернуть приложение django, разработанное локально, следуя этому руководству, с сервером на debian, а не на fedora.

После установки requirements.txt и настройка базы данных, когда я пытаюсь выполнить вторую проверку работоспособности (или что-либо связанное с manage.py ) возникает следующая ошибка:

 Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 327, in execute
    django.setup()
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/__init__.py", line 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/apps/registry.py", line 115, in populate
    app_config.ready()
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/debug_toolbar/apps.py", line 15, in ready
    dt_settings.patch_all()
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/debug_toolbar/settings.py", line 243, in patch_all
    patch_root_urlconf()
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/debug_toolbar/settings.py", line 231, in patch_root_urlconf
    reverse('djdt:render_panel')
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 568, in reverse
    app_list = resolver.app_dict[ns]
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 360, in app_dict
    self._populate()
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 293, in _populate
    for pattern in reversed(self.url_patterns):
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/utils/functional.py", line 33, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 417, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/utils/functional.py", line 33, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 410, in urlconf_module
    return import_module(self.urlconf_name)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/opt/anpene/anpene/config/urls.py", line 26, in <module>
    url(r'^contact/', include('contact_form.urls')),
  File "/opt/anpene/anp/local/lib/python2.7/site-packages/django/conf/urls/__init__.py", line 52, in include
    urlconf_module = import_module(urlconf_module)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
ImportError: No module named contact_form.urls
  

древовидная структура проекта (в основном перезаписанный шаблон из cookie-cutter-django):

  anpene
│   ├── contrib
│   │   ├── __init__.py
│   │   ├── __init__.pyc
│   │   └── sites
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── media
│   │   └── uploads
│   ├── static
│   │   ├── audio
│   │   ├── css
│   │   ├── fonts
│   │   ├── images
│   │   ├── js
│   │   └── sass
│   ├── taskapp
│   │   ├── celery.py
│   │   └── __init__.py
│   ├── templates
│   │   ├── 404.html
│   │   ├── 500.html
│   │   ├── account
│   │   ├── base.html
│   │   ├── contact_form
│   │   ├── pages
│   │   ├── question.html
│   │   ├── quiz
│   │   ├── result.html
│   │   ├── result_testing.html
│   │   ├── users
│   │   └── zinnia
│   └── users
│       ├── adapters.py
│       ├── adapters.pyc
│       ├── admin.py
│       ├── admin.pyc
│       ├── apps.py
│       ├── apps.pyc
│       ├── context_processors.py
│       ├── __init__.py
│       ├── __init__.pyc
│       ├── migrations
│       ├── models.py
│       ├── models.pyc
│       ├── templatetags
│       ├── tests
│       ├── urls.py
│       ├── urls.pyc
│       ├── views.py
│       └── views.pyc
├── compose
│   ├── django
│   │   ├── Dockerfile
│   │   ├── Dockerfile-dev
│   │   ├── entrypoint.sh
│   │   └── gunicorn.sh
│   ├── nginx
│   │   ├── dhparams.example.pem
│   │   ├── Dockerfile
│   │   ├── nginx.conf
│   │   ├── nginx-secure.conf
│   │   └── start.sh
│   └── postgres
│       ├── backup.sh
│       ├── Dockerfile
│       ├── list-backups.sh
│       └── restore.sh
├── config
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── settings
│   │   ├── common.py
│   │   ├── common.pyc
│   │   ├── __init__.py
│   │   ├── __init__.pyc
│   │   ├── local.py
│   │   ├── local.pyc
│   │   ├── production.py
│   │   └── test.py
│   ├── urls.py
│   ├── urls.pyc
│   ├── wsgi.py
│   └── wsgi.pyc
├── dev.yml
├── django_quiz
│   ├── build
│   │   ├── bdist.linux-x86_64
│   │   └── lib.linux-x86_64-2.7
│   ├── dist
│   │   └── django_quiz_app-0.5.1-py2.7.egg
│   ├── django_quiz_app.egg-info
│   │   ├── dependency_links.txt
│   │   ├── not-zip-safe
│   │   ├── PKG-INFO
│   │   ├── requires.txt
│   │   ├── SOURCES.txt
│   │   └── top_level.txt
│   ├── essay
│   │   ├── __init__.py
│   │   ├── __init__.pyc
│   │   ├── locale
│   │   ├── migrations
│   │   ├── models.py
│   │   ├── models.pyc
│   │   └── tests.py
│   ├── multichoice
│   │   ├── __init__.py
│   │   ├── __init__.pyc
│   │   ├── locale
│   │   ├── migrations
│   │   ├── models.py
│   │   ├── models.pyc
│   │   └── tests.py
│   ├── quiz
│   │   ├── admin.py
│   │   ├── admin.pyc
│   │   ├── forms.py
│   │   ├── forms.pyc
│   │   ├── __init__.py
│   │   ├── __init__.pyc
│   │   ├── locale
│   │   ├── migrations
│   │   ├── models.py
│   │   ├── models.pyc
│   │   ├── templates
│   │   ├── templatetags
│   │   ├── tests.py
│   │   ├── urls.py
│   │   ├── urls.pyc
│   │   └── views.py
│   ├── runtests.py
│   ├── setup.py
│   ├── test-settings.py
│   └── true_false
│       ├── __init__.py
│       ├── __init__.pyc
│       ├── locale
│       ├── migrations
│       ├── models.py
│       └── tests.py
├── docker-compose.yml
├── docs
│   ├── conf.py
│   ├── deploy.rst
│   ├── docker_ec2.rst
│   ├── index.rst
│   ├── __init__.py
│   ├── install.rst
│   ├── make.bat
│   └── Makefile
├── env
├── gulpfile.js
├── LICENSE
├── manage.py
├── package.json
├── pytest.ini
├── README.rst
├── requirements
│   ├── base.txt
│   ├── local.txt
│   ├── production.txt
│   └── test.txt
├── setup.cfg
├── staticfiles
│   ├── admin
│   │   ├── css
│   │   ├── fonts
│   │   ├── img
│   │   └── js
│   ├── admin_tools
│   │   ├── css
│   │   ├── images
│   │   └── js
│   ├── audio
│   │   └── juicy.mp3
│   ├── css
│   │   ├── animate.min.css
│   │   ├── bootstrap.min.css
│   │   ├── font-awesome.min.css
│   │   ├── lightbox.css
│   │   ├── main.css
│   │   ├── prettyPhoto.css
│   │   ├── progress-wizard.min.css
│   │   ├── project.css
│   │   └── responsive.css
│   ├── debug_toolbar
│   │   ├── css
│   │   ├── img
│   │   └── js
│   ├── django_extensions
│   │   ├── css
│   │   ├── img
│   │   └── js
│   ├── el-pagination
│   │   └── js
│   ├── fonts
│   │   ├── FontAwesome.otf
│   │   ├── fontawesome-webfont.eot
│   │   ├── fontawesome-webfont.svg
│   │   ├── fontawesome-webfont.ttf
│   │   ├── fontawesome-webfont.woff
│   │   ├── fontawesome-webfont.woff2
│   │   ├── glyphicons-halflings-regular.eot
│   │   ├── glyphicons-halflings-regular.svg
│   │   ├── glyphicons-halflings-regular.ttf
│   │   ├── glyphicons-halflings-regular.woff
│   │   └── glyphicons-halflings-regular.woff2
│   ├── images
│   │   ├── 404-bg.png
│   │   ├── 404.png
│   │   ├── aboutus
│   │   ├── blog
│   │   ├── blogdetails
│   │   ├── coming-soon1.png
│   │   ├── coming-soon2.png
│   │   ├── coming-soon3.png
│   │   ├── coming-soon4.png
│   │   ├── coming-soon-bg.png
│   │   ├── contact-bg.png
│   │   ├── favicon.ico
│   │   ├── home
│   │   ├── ico
│   │   ├── icon-map.png
│   │   ├── lightbox
│   │   ├── logo.png
│   │   ├── portfolio
│   │   ├── portfolio-details
│   │   └── services
│   ├── js
│   │   ├── audiojs.swf
│   │   ├── audio.min.js
│   │   ├── bootstrap.min.js
│   │   ├── coundown-timer.js
│   │   ├── gauge.js
│   │   ├── gmaps.js
│   │   ├── holder.js
│   │   ├── html5shiv.js
│   │   ├── jquery.countTo.js
│   │   ├── jquery.fitvids.js
│   │   ├── jquery.isotope.min.js
│   │   ├── jquery.js
│   │   ├── lightbox.min.js
│   │   ├── main.js
│   │   ├── masonry.min.js
│   │   ├── player-graphics.gif
│   │   ├── project.js
│   │   ├── respond.min.js
│   │   ├── w.gif
│   │   └── wow.min.js
│   ├── mptt
│   │   ├── arrow-move.png
│   │   ├── disclosure-down.png
│   │   ├── disclosure-right.png
│   │   ├── draggable-admin.css
│   │   └── draggable-admin.js
│   ├── sass
│   │   └── project.scss
│   ├── zinnia
│   │   ├── admin
│   │   └── theme
│   └── zinnia_bootstrap
│       ├── assets
│       ├── bootstrap
│       └── img
├── utility
│   ├── install_os_dependencies.sh
│   ├── install_python_dependencies.sh
│   ├── requirements-jessie.apt
│   ├── requirements-trusty.apt
│   └── requirements-xenial.apt
└── zinnia_customized
    ├── admin.py
    ├── admin.pyc
    ├── apps.py
    ├── __init__.py
    ├── __init__.pyc
    ├── migrations
    │   ├── 0001_initial.py
    │   ├── __init__.py
    │   └── __init__.pyc
    ├── models.py
    ├── models.pyc
    ├── tests.py
    ├── urls.py
    ├── urls.pyc
    ├── views.py
    └── views.pyc
  

Я установил django-contact-forms внутри виртуальной среды.

Приветствия

Комментарии:

1. Убедитесь, что вы используете интерпретатор, где вы устанавливаете свой django-contact-forms , потому что я только что попробовал, и все работает нормально.

2. Попробуйте удалить все .pyc файлы как локально, так и на сервере развертывания и снова проверить обе настройки?