我正在使用 django 1.11 。我使用models.py
生成了inspectdb
。
我跟着makemigrations
和migrate
,已成功完成。
默认情况下,在inspectdb
之后,managed
设置为False
,我已将其更改为True
(或可以将其删除)。
在做出改变之前,它看起来像这样:
class TableName(models.Model):
id = models.AutoField(primary_key=True)
field_one = models.IntegerField(blank=True, null=True)
field_two = models.IntegerField(blank=True, null=True)
field_three = models.CharField(max_length=10)
field_four = models.IntegerField(blank=True, null=True)
class Meta:
managed = True
db_table = 'table_name'
models.py
手动更改后:
class TableName(models.Model):
id = models.AutoField(primary_key=True)
field_one = models.ForeignKey(TableXYZ, on_delete=models.CASCADE)
field_two = models.ForeignKey(TableABC,on_delete=models.CASCADE)
field_three = models.CharField(max_length=10)
field_four = models.BooleanField()
class Meta:
managed = True
db_table = 'table_name'
现在,当我跟踪makemigrations
和migrate
时,未检测到或应用任何更改。我想要改变反映,但它没有检测到模型的任何变化。当我们手动编写模型时,这不会发生,因为它是在使用inspectdb
生成时发生的。请帮忙。