Django迁移并不总是有效

时间:2016-04-15 15:24:15

标签: python django migrate

好的,所以我在django 1.8中有一些迁移问题,我需要每次都手动删除我的数据库表。

我的问题是 - 每次我通过添加新字段并运行

来更改我的表后
python manage.py makemigrations 

python manage.py migrate

它表示没有适用的更改。 (迁移文件夹为空)

(它没有取消我在模型文件中所做的更改)

在结束表中保留旧结构,并在测试时给出错误。

如果我直接在DB中删除表并重新启动它可以正常工作,但这很麻烦,因为我每次都必须重新创建一个测试数据。

这是迁移中的错误还是只是我?

例如,这是我的模型文件表,但它之前发生在其他表中。

@with_author 
class BOM(models.Model): 
    name = models.CharField(max_length=200,null=True, blank=True)
    description = models.TextField(null=True, blank=True)
    product= models.ForeignKey(Product, on_delete=models.PROTECT)
    material =  models.OneToOneField(Material, related_name = 'material')
    creation_time = models.DateTimeField(auto_now_add=True)
    materialuom = models.CharField(max_length=1,
                              choices=UOM_CHOICES)
    quantity = models.DecimalField(max_digits=19, decimal_places=10)
    waste =  models.DecimalField(null=True, blank=True,max_digits=19, decimal_places=10)
    def __unicode__(self):
        return u'%s %s' % ( self.id, self.name) 

1 个答案:

答案 0 :(得分:1)

好的,所以我得到了我的工作,感谢@ahmed的评论。 每次执行python manage.py makemigrations appname时都必须输入appname。没有appname功能并不总是有效。

但是我相信django1.8迁移过程仍然存在问题。