python – django makemigrations没有检测到新模型

为了让我的
django应用程序知道我的遗留
MySql数据库中的表,我之前做过了几个版本,并且它运行正常.它生成了models.py.现在,我想添加一个新表“UserDetails”,这是django提供的用户的扩展.我写了以下代码:

class UserDetails(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    profilepicture  = models.CharField(max_length=256)
    telephone = models.CharField(max_length=100)
    aboutme = models.TextField(max_length=3000)
    paymentlinked = models.IntegerField()
    bidcount = models.IntegerField()
    lifetimebidused = models.IntegerField()
    totallogins = models.IntegerField()
    last_updatedon = models.DateField()
    last_bidupdate  = models.DateField()

保存文件后,我在命令提示符中运行以下命令:

python manage.py makemigrations

makemigrations似乎没有看到我在models.py中写的新类,因为它始终输出’未检测到更改’

我是正确地做了还是有什么问题?我检查了我的MySQL数据库并确认没有名为UserDetails的表已经存在.

最佳答案 我在开发过程中遇到了这个问题,这个组合帮助我:

python manage.py makemigrations mymodule

此命令为特定模块创建迁移.它应该在INSTALLED_APPS中,但是如果它不在那里你会收到警告.

python manage.py migrate

另外,请提一下xhenhen的答案,我用PyCharm创建包,所以默认情况下我有init.py文件.

点赞