Quelqu'un pourrait-il me donner un pointeur sur la raison pour laquelle j'ai besoin d'ajouter le chemin racine du projet au chemin python ainsi que l'application elle-même dans mon fichier WSGI?Django sys.path.append pour les projets * et * requis sous WSGI
La base du projet s'appelle 'djapp', l'application s'appelle 'myapp'.
sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..')
sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/../djapp')
os.environ['DJANGO_SETTINGS_MODULE'] = 'djapp.settings'
Si je laisse de côté la ligne avec « /../djapp/ » le journal dit que mon « myapp » ne peut pas être importé, même si « djapp.settings » est. (la validation de 'djapp' a été importée)
Elle fonctionne correctement avec la commande ./manage.py. il y a un __init__
dans le dossier du projet.
Pour l'amour de testings, je vois le même problème en utilisant addsitedir
:
site.addsitedir('/home/user/web/project/')
site.addsitedir('/home/user/web/project/djapp')
Salut Daniel, merci pour vos commentaires. Déjà essayé la 2ème option, mais il se plaint de l'importation de 'djapp.urls' – GerardJP