¿De dónde viene Django servidor dev (manage.py runserver) obtener su trayectoria desde?
-
25-09-2019 - |
Pregunta
I recientemente se movió una aplicación django de c:\Users\user\django-projects\foo\foobar
a c:\Python25\Lib\site-packages\foo\foobar
(que está en el camino pitón). Empecé una nueva aplicación en el directorio django-projects
, y añadió foo.foobar
al ajuste INSTALLED_APPS
. Cuando trato de ejecutar el servidor dev (manage.py runserver
) para mi nueva aplicación, me sale el error ImportError: No module named foobar
.
Mirando a través del rastreo, que está buscando en el c:\Users\user\django-projects\foo\..\foo\foobar
para la aplicación foobar
. Revisé mi variables PATH
y medio ambiente PYTHONPATH
, y ni punto de c:\Users\user\django-projects\foo
y no aparece en sys.path
cuando corro el intérprete de Python.
supongo que de alguna manera c:\Users\user\django-projects\foo
añadido a algún camino de Django a lo largo del desarrollo de foo
pero no recuerdo cómo lo hice.
Así que, con todo lo que conducen, mi pregunta es "¿cómo puedo hacer mirada manage.py en c:\Python25\Lib\site-packages
en lugar de c:\Users\user\django-projects\foo
?"
Gracias,
- Lexo
Solución
importaciones manage.py
settings.py desde el directorio actual y pasan settings
como parámetro para execute_manager
. Probablemente definido raíz del proyecto en settings.py.
Otros consejos
Me lo arregló, aunque no sé qué solución funcionó. En primer lugar, he borrado los archivos .pyc
de mi proyecto, entonces re-indexada mi búsqueda de Windows (supongo que esto lo hizo). Esto cambió el mensaje de error en el directorio correcto. Después de lo cual, me di cuenta de que tenía
from baz import settings
en mi archivo foobar/baz/models.py
, que estaba causando el problema desde el principio. He cambiado a este
import settings
que fija el problema. Gracias a Laurent por toda su ayuda: -)