为了让我的
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文件.