Sei que essa é uma pergunta antiga, mas lutei com esse mesmo problema o dia todo e minha solução foi simples.
Eu tive minha estrutura de diretórios algo ao longo das linhas de ...
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
E como todos os outros modelos até o modelo com o qual eu tinha problemas estavam sendo importados para outro lugar que acabou importando do main_appqual estava registrado no INSTALLED_APPS, tive a sorte de que todos eles funcionaram.
Mas desde que eu só acrescentou cada apppara INSTALLED_APPSe não o app_sub*quando eu finalmente acrescentou um novo arquivo de modelos que não foi importado qualquer outro lugar, Django totalmente ignorado-lo.
Minha correção foi adicionar um models.pyarquivo ao diretório base de cada um appassim ...
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
e adicione from apps.app.app_sub1 import *e assim por diante a cada um dos arquivos de appnível models.py.
Bleh ... isso me levou tanto tempo para descobrir e eu não consegui encontrar a solução em nenhum lugar ... Eu até fui para a página 2 dos resultados do google.
Espero que isso ajude alguém!