erros de importação Pip + WSGI
-
18-09-2019 - |
Pergunta
quando eu implantar meus aplicativos que trabalharam muito bem usando o servidor de teste django eu costumo ficar erros para cada pacote I instalado usando pip instalar -e .... # ovo = foo. Eu costumo fazer isso usando virtualenv, que colocou os arquivos em env / src / foo e coloca outro arquivo em Python / site-packages (este é um exemplo de Django-css):
django-css.egg-link, que contém as seguintes linhas:
/home/pinax-0.7.1/src/django-css
.
Como posso saber wsgi que ele deve seguir os links, ou estou fazendo algo errado completamente.
graças, Philipp Wassibauer
Solução
Este é o meu script WSGI para Django em um virtualenv parece com:
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'
import site
site.addsitedir('/path/to/virtualenv/lib/python2.6/site-packages')
from django.core.handlers.wsgi import WSGIHandler
application = WSGIHandler()
O bit chave é site.addsitedir(...)
, o que aumenta o conteúdo de todos os arquivos *.pth
no diretório especificado para sys.path
. Neste caso, é o arquivo easy-install.pth
que Python precisa de ajuda para encontrar.
Outras dicas
A documentação modwsgi tem notas sobre como usar virtualenv . Ele geralmente é tão simples como modificar o seu django.wsgi
(ou o que você chamá-lo) arquivo para que ele acrescenta ao ambiente virtualenv para o caminho de modwsgi.
Este link tem alguns adicionais, destilados, notas sobre o uso pip / virtualenv / modwsgi.