拥有如下模型
from django.contrib.auth.models import User # has migrations in 1.7
class MyProxyUser(User):
class Meta:
proxy = True
在没有迁移的应用程序中,在运行测试时会出现以下错误:
django.db.migrations.state.InvalidBasesError: Cannot resolve bases for [<ModelState: 'django_proxy_model_problems.MyProxyUser'>]
This can happen if you are inheriting models from an app with migrations (e.g. contrib.auth)
in an app with no migrations; see https://docs.djangoproject.com/en/1.7/topics/migrations/#dependencies for more
同时阅读
我无法弄清楚我应该采取什么措施来解决这个问题(manage.py makemigrations
报告No changes detected
)
tox -e py27-django17
可以重现此问题
这可以用Django 1.7&amp; amp; 1.8,但可以正常使用1.4
答案 0 :(得分:3)
运行manage.py makemigrations <app_label>
。除非您明确指定应用程序标签,否则Django不会创建迁移文件夹(如果它不存在)。这是因为(仍然)支持没有迁移的应用程序。
如果应用程序中存在migrations
文件夹,并且有一个__init__.py
文件(即使在Python 3上),Django会将该应用程序作为迁移的应用程序提取,并使用{{ {1}}。