bba*_*oy8 1 python django import django-4.1
我正在尝试在 django 4.1 中运行独立脚本。我按照文件顶部这篇文章中的建议进行了设置:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "path_to_settings.settings")
import django
django.setup()
Run Code Online (Sandbox Code Playgroud)
但是,在第 4 行,我收到以下错误:
ModuleNotFoundError: No module named 'sport_api'
这是我的INSTALLED_APPSsettings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# applications
'sport_api',
'sport_bet',
# library
'rest_framework',
'corsheaders',
]
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个错误?
更新:
仅使用该代码片段,您的脚本就应该与 manage.py 位于同一目录中。
否则,如果您将其嵌套在 中Backend\sportivo\sport_api,那么您需要:
from pathlib import Path
import sys
BASE_DIR = Path(__file__).resolve().parent.parent
sys.path.append(BASE_DIR.as_posix())
# ...
Run Code Online (Sandbox Code Playgroud)
根据其嵌套方式,只需根据需要进行BASE_DIR调整即可。.parent
不过,最好对独立脚本使用自定义管理命令。
| 归档时间: |
|
| 查看次数: |
593 次 |
| 最近记录: |