Sé que esta es una vieja pregunta, pero luché con este mismo problema todo el día y mi solución fue simple.
Tenía mi estructura de directorios algo parecido a ...
apps/
app/
__init__.py
app_sub1/
__init__.py
models.py
app_sub2/
__init__.py
models.py
app_sub3/
__init__.py
models.py
app2/
__init__.py
app2_sub1/
__init__.py
models.py
app2_sub2/
__init__.py
models.py
app2_sub3/
__init__.py
models.py
main_app/
__init__.py
models.py
Y dado que todos los otros modelos hasta el que tuve un problema se importaban en otro lugar que terminó importando desde el main_app
que se registró en el INSTALLED_APPS
, tuve la suerte de que todos funcionaran.
Pero como solo agregué cada uno app
de ellos INSTALLED_APPS
y no app_sub*
cuando finalmente agregué un nuevo archivo de modelos que no se importó EN NINGÚN OTRO LUGAR, Django lo ignoró por completo.
Mi solución fue agregar un models.py
archivo al directorio base de cada uno app
así ...
apps/
app/
__init__.py
models.py <<<<<<<<<<--------------------------
app_sub1/
__init__.py
models.py
app_sub2/
__init__.py
models.py
app_sub3/
__init__.py
models.py
app2/
__init__.py
models.py <<<<<<<<<<--------------------------
app2_sub1/
__init__.py
models.py
app2_sub2/
__init__.py
models.py
app2_sub3/
__init__.py
models.py
main_app/
__init__.py
models.py
y luego agregue from apps.app.app_sub1 import *
y así sucesivamente a cada uno de los archivos de app
nivel models.py
.
Bleh ... esto me tomó TANTO tiempo en descubrir y no pude encontrar la solución en ningún lado ... Incluso fui a la página 2 de los resultados de Google.
¡Espero que esto ayude a alguien!