【问题标题】:Django: python manage.py migrate does nothing at allDjango:python manage.py migrate 什么都不做
【发布时间】:2017-09-28 20:02:21
【问题描述】:

我刚开始学习 django,当我尝试应用我的迁移时,出现了第一个问题。我启动服务器,输入

python manage.py migrate

然后什么也没有发生。没有错误,没有崩溃,只是没有响应。

Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

May 01, 2017 - 11:36:27
Django version 1.11, using settings 'website.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
python manage.py migrate

我的终端提要到此结束。 我想也许它只是看起来什么都没有发生,但没有。更改未应用,我无法继续进行。有什么想法吗?

【问题讨论】:

  • 你先运行makemigrations了吗?
  • 你有多个数据库吗?
  • 你能在manage.py showmigrations看到你的应用和迁移吗?
  • 你没有回答我的问题:)
  • 您自己制作了manage.py 还是什么?我希望您使用的是为您生成的 Django。它应该只是将命令行参数传递给 django。

标签: python django python-3.x python-3.5


【解决方案1】:

试试:

python manage.py makemigrations
python manage.py migrate

【讨论】:

  • 同样的结果。两者都没有回应。
  • @AmiralJion 您只是根据这里的很多假设来猜测答案。不是正确的方式。
  • 所以,其他一些新手可能会犯和我一样的错误,所以在这里提一下。确保您的项目是在 python 2.7 还是 python3 上运行。如果是 python3,请使用 python3 运行此答案中的命令,即 python3 manage.py makemigrations
【解决方案2】:

你试过参数吗?

python manage.py makemigrations <app_name>

【讨论】:

  • 终端没有响应。
【解决方案3】:

好吧,您说您首先启动服务器,然后输入命令。这也是您共享的终端提要显示的内容。

如果您想使用manage.py 运行管理命令,请不要运行服务器。

点击 Ctrl+C 退出服务器,然后运行迁移命令,它将起作用。

【讨论】:

  • 哦。这很明显,我什至没有检查过......它有效。谢谢,也感谢@Grimmy 尽力提供帮助。
【解决方案4】:

@adam-karolczak 全部

如果有多个 DJANGO 项目,可能会发生 DJANGO_SETTINGS_MODULE 设置为环境变量中的某个其他应用程序,当前项目 manage.py 将不会指向当前项目设置,从而出现错误。

所以,确认 DJANGO_SETTINGS_MODULE 实际上指向当前项目的 settings.py。

如果项目正在运行,请关闭项目。 ctrl+C。 您还可以通过

检查服务器是否未运行(linux)
ps -ef | grep runserver

如果存在,则终止进程 ID。 如果您确认 DJANGO_MODULE_SETTINGS 中的 settings.py 适用于您遇到问题的项目。 运行以下它应该可以解决。

python manage.py makemigrations
python manage.py migrate

希望对你有帮助。

【讨论】:

    【解决方案5】:

    我遇到了同样的错误 在终端中运行这 2 个命令

        python manage.py makemigrations
        python manage.py migrate
    

    然后

        python manage.py runserver
    

    解决了我的问题。 谢谢

    【讨论】:

      【解决方案6】:

      我遇到了同样的问题,问题是在我尝试迁移的同时运行了一个 pg_dump 脚本。转储完成后,迁移成功运行。

      【讨论】:

        【解决方案7】:
        • 检查INSTALL_APPS应用是否存在,如果不存在则添加

        • 检查模型的默认属性

        • 在终端运行这2个命令

          python manage.py makemigrations python manage.py migration

        【讨论】:

          猜你喜欢
          • 2014-05-14
          • 2020-07-04
          • 1970-01-01
          • 2021-06-01
          • 2019-11-11
          • 2020-06-01
          • 2019-05-04
          • 2019-03-08
          • 2016-12-24
          相关资源
          最近更新 更多