【发布时间】:2014-09-04 07:18:41
【问题描述】:
重复的模型字段给我带来了麻烦(运行网页时没有这样的表 appname_modelname)。每当我执行 ./manage.py migrate appname 时,它都会给我“重复字段”。我检查了我的models.py,那里只有一个。如何删除该重复字段?似乎无论我做什么,它都会留下来。我试过了:
删除数据库
删除应用文件夹中的迁移文件夹
执行 ./manage.py sqlclear south,然后在 dbshell 中删除 south_migrationhistory 表
./manage.py schemamigration appname --initial, ./manage.py migrate appname --fake
我的想法已经用完了。
class Document(models.Model):
filename = models.CharField(max_length=255, blank=True, null=True, default=None)
identity = models.CharField(max_length=255, default=None, null=True)
user = models.ForeignKey(User, null=False)
user_id = models.IntegerField(User, null=True)
docfile = models.FileField(upload_to=_upload_path, storage=fs) # upload_to is a path inside the storage path
def get_upload_path(self,filename):
return str(self.user.id) + '/' + str(date.today()) + '/' + filename
【问题讨论】:
-
请发布出现重复字段错误的模型
-
好的,我已经编辑了我的 OP。重复的是 user_id
-
为什么 user_id 似乎是必要的? user 和 user_id 都是同一个字段。
-
如果我很久以前没有,我会收到一个错误,说这个字段丢失了。我发现这很奇怪,但我放弃了调试它,因为我找不到错误。
-
只保留一个字段 user = models.ForeignKey(User)..
标签: python django django-migrations