2010-05-13 156 views
5

它曾经工作,现在它不。 python manage.py syncdb不再为我的应用创建表格。Django 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) 

UPDATE

当我运行python manage.py loadddata initial_data,它给出了一个错误:

DeserializationError: Invalid model identifier: myapp.SomeModel 

加载这些数据之前已经工作得很好。该错误在数据文件中的第一个数据对象上抛出。

解决:

通过删除这一行修正:

from stringprep import bl 
+2

该表是否已经存在? – 2010-05-13 18:06:49

+0

不,我在每次运行syncdb之前删除SQLite数据库文件。 – 2010-05-13 18:38:51

回答

2

我敢打赌,你上面的(不一定MYUSER)提SomeModel模式已经得到了一个问题,这意味着它不能由loaddata导入。如果不是SomeModel,那么在与SomeModel相同的models.py中定义一个模型。

你试过./manage.py validate?即使这表示所有模型都没有问题,但有时如果应用程序的models.py中存在错误,则整个应用程序对manage.py将变得“不可见”。我不能说我知道为什么这种情况,但似乎响个不停。

+5

验证报告:发现'0个错误'。我想我会亲自查看其他错误。 – 2010-05-13 18:39:36

相关问题