Hola Esta es una pregunta anterior, pero no fue respondida. No está seguro de lo que está tratando de hacer, pero hay básicamente dos modos que puede utilizar virtualenv,
- para el desarrollo, para crear entornos autónomos
- Para la implementación, para crear entornos autónomos
En el primer caso, primero necesita activar su virtualenv con source venv/bin/activate, para cuando implemente, debe asegurarse de que el virtualenv esté activado para el código de su sitio web. Personalmente, prefiero el siguiente enfoque para garantizar que su ruta esté configurada correctamente. (Añado también esto a mi manage.py cuando se hace el desarrollo, por lo que no tiene que preocuparse acerca de la activación del medio ambiente en primer lugar.
manage.py Modificado
#!/usr/bin/env python
import os.path
# Cater for Virtual env, add to sys.path
pwd = os.path.abspath(os.path.dirname(__file__))
project = os.path.basename(pwd)
new_path = pwd.strip(project)
activate_this = os.path.join(new_path,'venv','bin','activate_this.py')
execfile(activate_this, dict(__file__=activate_this))
from django.core.management import execute_manager
try:
import settings # Assumed to be in the same directory.
except ImportError:
import sys
sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__)
sys.exit(1)
if __name__ == "__main__":
execute_manager(settings)
Esto funciona, debido a lo estructuro mi proyectos, que tendrían que cambiar a su estructura de directorios Mis proyectos están estructurados de esta manera:.
TopLevelDir
|
|- Project DIR
|- venv
|- requirements
|- deployment configs
¿Cuáles son los contenidos del tinglado línea en la parte superior de la manage.py que está ejecutando? ¿Cuáles son los comandos exactos que usa para ejecutar el intérprete interactivo de Python y manage.py cuando su virtualenv está activado? –