Django 迁移并不总是有效

Django migration doesn't always work

好的,所以我在 django 1.8 中遇到了一些迁移问题,我需要每次都手动删除我的数据库 table 来解决。

我的问题如下 - 每次我通过添加新字段和 运行

更改 table 后
python manage.py makemigrations 

python manage.py migrate

它说没有要应用的更改。 (迁移文件夹为空)

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

最后 table 保持旧结构,在我测试时它给我错误。

如果我直接将 table 放入数据库并重新启动,它可以工作,但很烦人,因为我每次都必须重新创建测试数据。

是迁移中的错误还是我的问题?

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

@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) 

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

不过我认为django1.8的迁移过程还是有问题。