4

我正在阅读 Django Polls 教程,我正在尝试命令“python manage.py makemigrations polls”,但我不断收到消息“在应用程序'polls'中没有检测到更改”

我不明白我做错了什么,或者我怎么能做不同的事情,或者这个信息甚至意味着什么。

为清楚起见编辑:

我希望有点像教程上的打印输出:

Migrations for 'polls':
  0001_initial.py:
    - Create model Question
    - Create model Choice

然后在本教程的后面,当它要求我输入命令python manage.py sqlmigrate polls 0001时,我会得到某种打印输出,就像所示的那样(相当长)。我正在学习https://docs.djangoproject.com/en/1.7/intro/tutorial01/上的教程

相反,我得到

CommandError: Cannot find a migration matching 'polls' form app '0001'. Is it in INSTALLED_APPS?
4

2 回答 2

5

问题最终是models.py 在迁移之前没有填写。它应该看起来像这样。

模型.py文件:

from django.db import models 

class Question(models.Model): 
    question_text = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 


class Choice(models.Model): 
    question = models.ForeignKey(Question) 
    choice_text = models.CharField(max_length=200) 
    votes = models.IntegerField(default=0)

还要确保 'polls' 列在 'settings.py' 文件的 'INSTALLED_APPS' 中。

于 2014-07-26T09:57:00.480 回答
1

我遇到了同样的错误,只是发现 VSCode 没有处于 AutoSave 模式,这是 VSCode 的新系统/安装。如果正确遵循教程,唯一的失败实例应该是在运行迁移之前直接在“polls”中的 models.py 没有正确保存。

于 2020-11-13T14:30:47.840 回答