首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >姜戈南迁移错误关系"photo_photo“已经存在

姜戈南迁移错误关系"photo_photo“已经存在
EN

Stack Overflow用户
提问于 2015-02-26 06:01:59
回答 1查看 167关注 0票数 0

我正在使用Django South.I,我正在学习http://south.readthedocs.org/en/latest/tutorial/part1.html教程

首先,我想给出一些关于我的项目和应用程序的信息。我有一个django应用程序,即photo,我有两个模型,即PhotoUserCommission

这些都是模型

代码语言:javascript
复制
class Photo(models.Model):
   name = models.CharField(max_length = 100)
   photo = models.ImageField(upload_to = 'photos', blank=False,null=True)
   approved = models.BooleanField(default = False)
   approved_time = models.DateTimeField(auto_now=True,null=True,blank=True)
   uploaded_time = models.DateTimeField()
   description = models.CharField(max_length = 500 , blank = False , null = True)

代码语言:javascript
复制
class UserCommission(models.Model):
        user = models.ForeignKey(User)
        created_time = models.DateTimeField('Created Time',auto_now_add=True)
        commission = models.IntegerField()
        photo_name=models.CharField(max_length=255)
        photo = models.ImageField(upload_to='commission_image')
        download = models.DateTimeField()
        photo_id = models.CharField(max_length=300)

在我的第一次迁移中,我根据本教程应用了以下内容:

代码语言:javascript
复制
python manage.py schemamigration photo --initial

我立即应用了以下命令

代码语言:javascript
复制
python manage.py migrate photo

然后,我对我的Photo模型进行了修改,并为最终迁移应用了以下命令

代码语言:javascript
复制
  python manage.py schemamigration photo --auto

代码语言:javascript
复制
  python manage.py migrate photo

最后,我成功地完成了第一次迁移,并在Photo模型中添加了编辑的列!

现在,在另一种情况下,我必须对我的UserCommission模型进行更改,为此,我遵循了在第二个迁移的最后一个命令之后的第一个migration.but所遵循的过程,即

代码语言:javascript
复制
python manage.py migrate photo

我面临以下错误

运行照片迁移:-向前迁移到0002_initial。

photo:0001_initial致命错误--以下SQL查询失败:创建表"photo_photo“("id”序列不为空主键,"name“varchar(100) NULL,”照片“”varchar(100) NULL“,"approved_time”时间戳带时区NULL,“approved_time”时间戳带时区NULL,"uploaded_time“时间戳带时区NULL,"description”varchar(500) NULL,"image_id“varchar(300) NULL,”uploaded_time“布尔NULL,"approved_by“varchar(100) NULL,"user_id”整数NULL,"total_download“整数NULL,"watermarked_image”varchar(100) NULL,"dpi_value“整数NULL)错误是:关系"photo_photo”在迁移中已经存在错误: photo:0001_initial DatabaseError:关系"photo_photo“已经存在

代码语言:javascript
复制
DatabaseError: relation "photo_photo" already exists

告诉你吧,这真的让我心烦。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-26 06:12:34

听起来,迁移已经被应用了,而数据库却认为没有。您可以始终使用migrate --fake来更新数据库中的表,而无需尝试应用迁移。

在您的例子中,看起来您需要(至少) python manage.py migrate photo --fake 0002。您可能需要在多个迁移中执行此操作,这取决于您已经完成了多少次迁移和所做的工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28735525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档