它曾经工作过,现在却没有。 python manage.py syncdb
不再为我的应用制作表格。
来自 settings.py :
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'mysite.myapp',
'django.contrib.admin',
)
我可能做错了什么?中断似乎与在 models.py 中编辑此模型相吻合,但这可能完全是巧合。我注释掉了我改变的线条,它仍然不起作用。
class MyUser(models.Model):
user = models.ForeignKey(User, unique=True)
takingReqSets = models.ManyToManyField(RequirementSet, blank=True)
takingTerms = models.ManyToManyField(Term, blank=True)
takingCourses = models.ManyToManyField(Course, through=TakingCourse, blank=True)
school = models.ForeignKey(School)
# minCreditsPerTerm = models.IntegerField(blank=True)
# maxCreditsPerTerm = models.IntegerField(blank=True)
# optimalCreditsPerTerm = models.IntegerField(blank=True)
更新:
当我运行python manage.py loadddata initial_data
时,它会出错:
DeserializationError: Invalid model identifier: myapp.SomeModel
加载此数据之前工作正常。在数据文件中的第一个数据对象上抛出此错误。
已解决:
通过删除此行修复:
from stringprep import bl
答案 0 :(得分:2)
我敢打赌,你上面提到的SomeModel模型(不一定是MyUser)遇到了问题,这意味着它无法通过loaddata导入。如果不是SomeModel,那么模型在相同的models.py中定义了SomeModel。
你试过./manage.py validate
吗?即使这表示所有模型都很好,有时如果应用程序的models.py中存在错误,整个应用程序对manage.py变得“不可见”。我不能说我知道为什么就是这种情况,但似乎敲响了警钟。