makemigrations 无法在 INSTALLED_APPS 中找到应用程序
Posted
技术标签:
【中文标题】makemigrations 无法在 INSTALLED_APPS 中找到应用程序【英文标题】:makemigrations not able to find app within INSTALLED_APPS 【发布时间】:2016-03-26 13:04:41 【问题描述】:我正在尝试将现有的 django 1.4 项目移植到 django 1.7
这是我将项目移植到 django 1.7 之前的树结构
Project
- MainApp
- manage.py
- settings.py
- another_sub_app
- another_sub_app2
在移植项目时,我不得不将 manage.py 和 sub_apps 上移一级。
Project
- another_sub_app
- another_sub_app2
- manage.py
- MainApp
- settings.py
我使用“South”进行数据库迁移,必须使用“python manage.py schemamigration”进行迁移。现在(移植后)我将使用“python manage.py makemigrations”来迁移特定于应用程序的模型更改。
但是,在运行“python manage.py makemigrations”时,我得到了:
找不到应用“app_name”。它在 INSTALLED_APPS 中吗?
我在 INSTALLED_APPS 下有应用程序,由于我所做的结构更改,我还尝试了包括 .在 INSTALLED_APPS 内。但这又显示了同样的错误。
我的问题是有没有人尝试将项目移植到 django 1.7 并且遇到过类似的问题?
【问题讨论】:
【参考方案1】:我没有尝试将项目移植到 django 1.7。但是,我使用 django 1.7,你的 settings.py 应该是这样的
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites',
'your_app_name', #In your case, MainApp
'your_app_name', #In your case, another_sub_app
'your_app_name', #In your case, another_sub_app2
)
而树形结构是
Project
- Project
- settings.py
- MainApp
- another_sub_app
- another_sub_app2
- manage.py
【讨论】:
以上是关于makemigrations 无法在 INSTALLED_APPS 中找到应用程序的主要内容,如果未能解决你的问题,请参考以下文章
Django 上的 MakeMigration 错误 - ImportError:无法从“django.db.models”导入名称“FieldDoesNotExist”
Django 1.11 使用命令makemigrations命令无法执行表修改动作
makemigrations 忽略所有领域 (DJANGO)
django makemigrations 和 heroku 服务器上的迁移不创建表