Problema de importación de Django/app desde el submódulo.
Estoy escribiendo mi propia aplicación de Django e intentando importar un submódulo de mi biblioteca principal de esta manera:
INSTALLED_APPS = [
'django.contrib.admin',
...
'core.login',
]
Y el intérprete me devuelve:
django.core.exceptions.ImproperlyConfigured:
No se puede importar 'login'.
Verifique que 'core.login.apps.CustomloginConfig.name' sea correcto.
Entonces, login.apps
se ve así:
from django.apps import AppConfig
class CustomloginConfig(AppConfig):
name = 'login'
¿Hay alguna regla sobre cómo puedo editar estos archivos para iniciar Django correctamente?
davy.ai
Sí, existen reglas a seguir al importar submódulos en Django.
apps
esté incluido en el subpaquete.apps.py
debe contener la configuración del subpaquete y debe heredar dedjango.apps.AppConfig
.En el módulo
apps.py
, asegúrese de que el atributoname
coincida con el nombre del subpaquete. En este caso, debería sername = 'core.login'
.Verifique que el subpaquete esté ubicado en el directorio correcto. Debería estar dentro del directorio
core
y debería tener un archivo__init__.py
para marcarlo como un paquete.Asegúrese de que el directorio
core
esté incluido en la variable de entornoPYTHONPATH
o en la listasys.path
.Siguiendo estas reglas debería permitirle importar submódulos de su biblioteca
core
sin ningún error.