tutorial - python django
Error de importación: no hay módulo llamado django (5)
Estoy usando centos linux.
Tuve python 2.6 con django y ahora actualicé a python 2.7.
Python 2.6 se encuentra en /usr/lib/python2.6.
Python 2.7 se encuentra en /usr/local/lib/python2.7.
Ambos tienen un directorio de paquetes de sitio y ambos contienen django 1.2.
Si ejecuto python obtengo la versión 2.7.
Mi problema es que si intento importar django obtengo
ImportError: No hay módulo llamado django
No estoy seguro de dónde está definido mi PYTHONPATH y si esto es lo que necesito cambiar. alguien
Terminé haciendo un enlace simbólico al directorio de paquetes de sitio 2.6.
En Linux, puede establecer la variable de entorno PYTHONPATH en su .profile o .bashrc. Puede editarlo directamente desde el terminal cambiando a su directorio de inicio (cd ~), y luego editar el archivo (nano .bashrc), o abrir el archivo con gtkedit o vim o lo que sea, y agregar:
PYTHONPATH=/usr/local/lib/python2.7/site-packages:/another/path/etc
Si desea probar esto antes de editar su perfil, puede exportarlo desde el terminal como:
export PYTHONPATH=/local/lib/python2.7/site-packages
Supongo que está ejecutando esto directamente desde la línea de comandos. Si lo está ejecutando como un módulo wsgi en Apache, puede agregar esto a su syspath desde su archivo wsgi como:
import sys
sys.path.append(''/usr/local/lib/python2.7/site-packages'')
Intente imprimir sys.path
para ver qué hay en su camino. Django necesita estar en uno de los directorios listados. Ejemplo en Windows:
>>> import sys
>>> for p in sys.path: print p
C:/Python27/Lib/idlelib
C:/Windows/system32/python27.zip
C:/Python27/DLLs
C:/Python27/lib
C:/Python27/lib/plat-win
C:/Python27/lib/lib-tk
C:/Python27
C:/Python27/lib/site-packages
>>>
Para verificar su ruta, puede usar el siguiente código:
import sys
print(sys.path)
Si ya sabe dónde está instalado django, debería ser fácil probar si el directorio deseado está en su ruta con el directory in sys.path
.
Con respecto a dónde está definido PYTHONPATH
, tenga en cuenta que es una variable de entorno, por lo que puede verificar su valor (si está definido) con: echo $PYTHONPATH
Tuve el mismo error, y esto solucionó mi problema.
python -m pip install django
:) ¡Hecho!
tratar
pip freeze
este comando muestra qué paquetes están instalados en su sistema y luego se ejecutan con privilegios de raíz
pip install django
luego crea un nuevo proyecto con comando
django-admin.py startproject mysite
entonces comienza tu proyecto
cd path/to/mysite
./manage.py runserver
en el archivo wsgi.py agrega estas líneas
import os
import sys
DJANGO_PATH = os.path.join(os.path.abspath(os.path.dirname(__file__)), ''..'')
sys.path.append(DJANGO_PATH)