在Django模型中进行迁移时出现“外键不匹配”错误

时间:2020-07-23 15:17:33

标签: django sqlite django-models foreign-keys django-migrations

我有一个这样的模型游戏(我正在定义PK字段,因为我是通过gameID附带的API调用填充此表的):

class Game(models.Model):
    gameId          = models.IntegerField(primary_key=True, default=-1)
    season          = models.PositiveIntegerField()
    season_type     = models.CharField(max_length=50)
    dateTime        = models.DateTimeField(auto_now_add=True)
    ...
    ...

以及模型GameOdd:

class GameOdd(models.Model):
    game                     = models.ForeignKey(Game, on_delete=models.CASCADE)
    sportsbook               = models.CharField(max_length=75)
    created_when             = models.DateTimeField(auto_now_add=True)
    ...
    ...

错误消息显示“外键不匹配-“ bets_gameodd”引用“ bets_game””(bets是应用程序的名称)。我正在使用一个sqlite数据库,并且它是空的(除了我的管理员用户配置文件)。这似乎是一个相对简单的外键关系,我首先定义父表。我为为什么收到此错误感到困惑。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

https://community.simpleisbetterthancomplex.com/t/foreign-key-mismatch-error/143

因此,删除所有迁移文件和SQLite文件,然后再次运行python manange.py makemigrations