繁体   English   中英

Django数据库迁移错误

[英]Django database migration error

我有一个连接到Gmail API的Django项目。 当我尝试进行数据库迁移时,它返回以下内容:

C:\Users\Peter\Desktop\FastProject>python manage.py migrate FastProject
Traceback (most recent call last):
  File "manage.py", line 15, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\__init__.py", l
ine 371, in execute_from_command_line
    utility.execute()
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\__init__.py", l
ine 365, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line
288, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line
332, in execute
    self.check()
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line
364, in check
    include_deployment_checks=include_deployment_checks,
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\commands\migrat
e.py", line 58, in _run_checks
    issues.extend(super()._run_checks(**kwargs))
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line
351, in _run_checks
    return checks.run_checks(**kwargs)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\checks\registry.py", line
73, in run_checks
    new_errors = check(app_configs=app_configs)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\checks\urls.py", line 13,
in check_url_config
    return check_resolver(resolver)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\checks\urls.py", line 23,
in check_resolver
    return check_method()
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\urls\resolvers.py", line 397, i
n check
    for pattern in self.url_patterns:
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\utils\functional.py", line 36,
in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\urls\resolvers.py", line 536, i
n url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\utils\functional.py", line 36,
in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\urls\resolvers.py", line 529, i
n urlconf_module
    return import_module(self.urlconf_name)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "C:\Users\Peter\Desktop\FastProject\FastProject\urls.py", line 21, in <module>
    path('', include('mainApp.urls')),
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\site-packages\django\urls\conf.py", line 34, in incl
ude
    urlconf_module = import_module(urlconf_module)
  File "C:\Users\Peter\AppData\Local\Programs\Python\Python36\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "C:\Users\Peter\Desktop\FastProject\mainApp\urls.py", line 3, in <module>
    from . import views
  File "C:\Users\Peter\Desktop\FastProject\mainApp\views.py", line 2, in <module>
    from quickstart import go
ModuleNotFoundError: No module named 'quickstart'

我也尝试过'makemigrations'和旧的'syncdb',但是第一个给出了相同的错误,第二个不再使用。我使用SQLite3。 这是在我的设置中:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'results_db.sqlite3'),
    }
}

“ quickstart”是我从中调用函数的文件。 我猜所有名称都是正确的,所以我不知道出了什么问题。 这是以前的错误,但我决定稍后再考虑。

谢谢。

绝对与以下行有关:

   File "C:\Users\Peter\Desktop\FastProject\mainApp\views.py", line 2, in <module>
    from quickstart import go
ModuleNotFoundError: No module named 'quickstart'

好像您缺少quickstart模块。 它和一些教程有关吗? 也许您忘了激活虚拟环境?

更新:

如果您具有这样的项目结构https://ibb.co/fdvaRJ,则应该使用本地导入或提供软件包的完整路径:

from .quickstart import go

要么

from mainApp.quickstart import go

或者,您可以将quickstart.py模块上一层,然后使用

from quickstart import go

就像您现在所做的那样。

不要忘记查看有关Python中包装和模块的官方指南: https : //docs.python.org/3/tutorial/modules.html#packages

我对该快速入门文件做了一些操作。 首先,我在每个文件夹“ init .py”中创建一个文件夹,然后在app目录中创建一个空文件夹,然后将n拖放到“ quickstart.py”中,并在其中也创建一个空的“ init”文件。 无效:错误刚从ModuleNotFoundError:无名为“ quickstart”的模块更改为ModuleNotFoundError:无名为“ api.quickstart”的模块。

然后,我删除了2分钟前创建的所有“ init”文件,将“ quickstart”文件放回应用程序的根文件夹,还拖放了一个“ init”文件。

错误变得就像“从快速入门导入go ImportError:无法导入名称'go'”。 接下来,我只是将“从quickstart import go”更改为“ import quickstart”,然后调用了诸如“ quickstart.go()”之类的go函数。

文字过多,因此图片难以理解:

https://ibb.co/fdvaRJ

https://ibb.co/kzgPmJ

https://ibb.co/jyjVty

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM