2012-01-02 25 views
6

Por favor, ayúdenme en esto. Estoy haciendo esto en Fedora 16.Usando virtualenv en Pycharm como Django IDE

Mi entorno virtual es /home/username/Desktop/.pythonenv

Ahora, observe el punto. Debido a que es un directorio oculto, tuve que hacer un enlace simbólico para que Pycharm "ingrese" el directorio.

sudo ln -s /home/yeukhon/Desktop/.pythonenv /home/yeukhon/Desktop/sypythonenv 

Ahora puedo usar este entorno virtual. Sin embargo, ocurrieron dos problemas y no estoy seguro si el primero tiene algo que ver con el segundo.

A. Falta de GTK y GST

Aquí están las dos capturas de pantalla. Al virtualenv python le falta GTK y GST ... No tengo idea de por qué.

System PythonVirtualenv

B. Django no es importable en este AMBIENTE

Traté de correr mi proyecto Django bajo virtualenv (proyecto 1), pero no puedo. Puedo ejecutar el mismo proyecto a través de Terminal.

[[email protected] ~]$ cd Desktop/djangoapp/project1 
[[email protected] mysite]$ source /home/yeukhon/Desktop/.pythonenv/project1/bin/activate 
(project1)[[email protected] mysite]$ python2.7 manage.py runserver 
# I had to use python2.7 instead of python. That's the only problem with terminal here. 

Pregunta

  1. ¿Cómo puedo hacer que runable en PyCharm con mi virtualenv intérprete de Python?

  2. ¿El # 1 tiene algo que ver con el # 2?

  3. ¿Cómo hago para que GTK y GST aparezcan en mi virtualenv?

Gracias por su tiempo.

Respuesta

4

En primer lugar, no es necesario crear un enlace simbólico, ya que el cuadro de diálogo agregar intérprete tiene un botón 'mostrar archivos ocultos y directores', y también puede escribir manualmente la ruta.

Cada virtualenv es, desde la versión 1.7, un entorno aislado por defecto. Eso significa que debe pasar explícitamente los paquetes de sitio de sistema ENV si desea incluir automáticamente las bibliotecas de sistemas (antes 1.7 tenía que pasar la opción no-paquetes de sitio si quería un env aislado)

Así que mi primera suposición es que simplemente no has instalado las bibliotecas que te faltan dentro de tu Virtualenv. Compruebe la salida de la congelación de pip después de activar su virtualenv. Si esas bibliotecas faltan, sólo tiene que instalar con pip:

pip install django

Ahora, como parece que el uso de la pitón no predeterminado para sus virtualenvs, asegurarse de que no está utilizando el sistema en su lugar. También puede invocarlo directamente usando el que está debajo del directorio/bin de su virtualenv.

+0

Hola. Muchas gracias por ayudarme.Pregunta: Para su segundo punto, ¿eso derrota el propósito del "envolvimiento aislado"? ¿O debería instalar gtk y gsk por mi cuenta? Supongo que está bien usar las bibliotecas sys por defecto, ya que el virtualenv es útil para las bibliotecas que no son sys y que voy a instalar en el futuro. Gracias. – CppLearner

+0

solo depende de lo que necesita. Hay algunas bibliotecas que a las personas les gusta instalar a través de su distribución, es decir, PIL, para que no tengan que instalar las dependencias para compilarlas. Personalmente, no uso con-site-packages. – ashwoods

+0

otros simplemente instalan sus bibliotecas relevantes para proyectos en virtualenv, aquellas que están destinadas a cambiar mucho de un proyecto a otro. Incluso uso Pythonbrew para aislar y administrar los intérpretes de Python. – ashwoods

Cuestiones relacionadas