Ho un progetto Django con una app chiamata subscribe
. Nella radice urls.py
utilizzo incluso da subscribe
di urls.py
.Django uwsgi import error
ho messo a INSTALLED_APPS
subscribe
ed in s' urls.py
subscribe
Io uso subscribe.views.<name>
per chiamare i miei punti di vista. Quando il server viene eseguito come python manage.py runserver
localmente tutto funziona correttamente. Ma quando il server gira su nginx + uwsgi con virtualenv, ho ImportError: No module named subscribe
. Quando cambio subscribe
in project.subscribe
in INSTALLED_APPS
e in subscribe
's urls.py
sostituendo subscribe.views.<name>
in project.subscribe.views.<name>
tutto funziona correttamente.
uwsgi config:
[uwsgi]
socket = 127.0.0.1:9003
workers = 2
master = true
virtualenv = /home/user/python
chdir = /home/user
env = DJANGO_SETTINGS_MODULE=project.settings
module = django.core.handlers.wsgi:WSGIHandler()
daemonize = /home/user/uwsgi.log
Perché dovrei utilizzare l'importazione percorso assoluto e come posso cambiare a tornare sul relativo nginx + uwsgi con virtualenv?
aggiungere 'project' al percorso pitone sia attraverso lo script di avvio virtualenv o in altro modo –
mio script di avvio già contenere it: sys.path.insert (0, '/ home/utente/progetto') – ZedXter
Django minaccia le cartelle con __init__.py come pacchetti e yo impostate '/ home/user/project' come directory root nello script' wsgi', quindi dovrebbe funzionare come 'python manage.py runserver' funziona. –