django迁移中出错,未检测到任何更改

1u4esq0p  于 2021-08-25  发布在  Java
关注(0)|答案(1)|浏览(327)

我已经使用python manage.py migrate命令正确地完成了“初始设置”,现在在我的mongodb数据库中,我看到了以下集合:

__schema__
auth_group
auth_group_permissions
auth_permission
auth_user
auth_user_groups
auth_user_user_permissions
django_admin_log
django_content_type
django_migrations
django_session

里面有物体,所以我很确定我做的是正确的,如果我现在做,它会说:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  No migrations to apply.

我认为这一切都很正常,然后我创建了这个models.py文件
models.py

from django.db import models

# Create your models here.

class Customer(models.Model):
    name = models.CharField(max_length=200, null=True)
    surname = models.CharField(max_length=200, null=True)
    phone = models.CharField(max_length=200, null=True)
    email = models.CharField(max_length=200, null=True)
    date_created = models.DateTimeField(auto_now_add=True, null=True)

以下是my settings.py文件的一部分:

INSTALLED_APPS = [
    'mysite',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

文件夹结构:

mysite
  mysite
    __init__.py
    settings.py
    other files
  polls
    migrations
    other files
      __init__.py

当我尝试执行python manage.py makemigrations时,我得到了“未检测到任何更改”。添加我的应用程序名并不能解决问题。我有一个migrations文件夹,其中包含init.py(带_u)。我不明白为什么它在初始设置中起作用,而现在却不起作用。如果我在models.py文件中输入了一些语法错误,那么我在运行命令后得到的消息是相同的,因此可能models.py正在另一个文件夹中搜索?真的不知道,无论如何希望我写下所有必要的东西,如果你需要更多的信息,我会尽快回复!

hrysbysz

hrysbysz1#

这里有一些事情需要检查,以确保您的迁移能够顺利进行。
确保您使用创建了应用程序 django-admin startapp mysite .
确保在将模型添加到中后已保存模型文件 mysite/models.py .
在settings.py中将应用程序名称添加到已安装的应用程序中,但请确保在所有应用程序之后添加该名称。
在你的情况下,我看到你添加了 mysite 在已安装的应用程序中,实际上您应该添加应用程序名称而不是项目名称,在您的情况下 polls 应用程序。

相关问题