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

python – django makemigrations没有检测到新模型,第1张

概述为了让我的 django应用程序知道我的遗留 MySql数据库中的表,我之前做过了几个版本,并且它运行正常.它生成了models.py.现在,我想添加一个新表“UserDetails”,这是django提供的用户的扩展.我写了以下代码: class UserDetails(models.Model): user = models.OneToOneField(User, on_delete= 为了让我的 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文件.

总结

以上是内存溢出为你收集整理的python – django makemigrations没有检测到新模型全部内容,希望文章能够帮你解决python – django makemigrations没有检测到新模型所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1193456.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存