我在应用程序“线程评论”中有一个模型 ThreadedComments。
然后我有另一个应用程序“cbcomments”,models.py 仅包含:
ThreadedComment.add_to_class('post_as', models.CharField(max_length=250))
ThreadedComment.add_to_class('is_deleted_by_user', models.BooleanField(default=False))
ThreadedComment.add_to_class('is_edited_by_user', models.BooleanField(default=False))
ThreadedComment.add_to_class('date_edited', models.DateTimeField(null=True))
def post_as_obj(self):
if not self.post_as:
return None
try:
return json.loads(self.post_as)
except:
return None
def _get_source_user(self):
return self.user
ThreadedComment.post_as_obj = post_as_obj
ThreadedComment.get_source_user = _get_source_user
以及 ThreadedComments 的 4 次南迁。
当我尝试构建测试数据库时,它在第二次迁移时崩溃,出现“无法添加重复列'post_as'”错误。
我唯一能想到的是,由于某种原因,South 在加载 cbcomments 之后,在运行 cbcomments(但实际上是 ThreadedComments)迁移之前,在 ThreadedComments 上执行了一个同步数据库。
如何?为什么?我该怎么办?