在 django 中使用 makemigration 时出错

问题描述 投票:0回答:3

我正在开发一个使用 virtualenv 运行 python3.5 和 Django 1.11 的开发服务器

当我使用“python manage.py makemigrations”时,我收到此错误

Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
  File "/opt/hafez_bot/env/lib/python3.5/site-packages/django/core/management/__init__.py", line 13, in <module>
    from django.core.management.base import (
  File "/opt/hafez_bot/env/lib/python3.5/site-packages/django/core/management/base.py", line 17, in <module>
    from django.db.migrations.exceptions import MigrationSchemaMissing
  File "/opt/hafez_bot/env/lib/python3.5/site-packages/django/db/migrations/__init__.py", line 1, in <module>
    from .migration import Migration, swappable_dependency  # NOQA
ImportError: No module named 'django.db.migrations.migration'

请帮助我


我知道这是关于我的“manage.py”文件,与迁移无关。因为“python manage.py help”引发了同样的错误

这是我的“pip freeze”输出:

certifi==2017.7.27.1
Django==1.11.6
djangorestframework==3.6.4
future==0.16.0
mysqlclient==1.3.12
python-telegram-bot==8.0
pytz==2017.2
django migration python-3.5 makemigrations
3个回答
5
投票

我删除了 Django,然后重新安装了它。 错误已修复


0
投票

我学到了一个惨痛的教训,也学到了一个宝贵的教训,任何时候你可能会面临 django 提出的挑战,底部有一行包含以下组件

ImportError: No module named 'django.db.migrations.migration'
,这对你来说是有好处的,注意 django 没有安装出色地。所以你将被迫再次重新安装django,以便所有模型迁移文件都可以用于迁移。


0
投票

有时要删除 *.pyc 文件,人们会使用以下命令:

find . -path "*/migrations/*.py" -not -name "__init__.py" -delete

如果 venv 文件夹恰好位于当前文件夹内,这也会删除

migrations
文件夹中的
./venv
文件夹。

venv
文件夹移动到其他位置。

© www.soinside.com 2019 - 2024. All rights reserved.