Django WEB开发过程中,经常会需要单独执行python脚本检测方法是否有误。
单独执行python脚本时详细报错如下:
django.core.exceptions.ImproperlyConfigured: Requested setting
DEFAULT_INDEX_TABLESPACE, but settings are not configured. You must
either define the environment variable DJANGO_SETTINGS_MODULE or call
settings.configure() before accessing settings.
解决方法: python脚本开头加入以下代码(导入web.settings文件)
import os
import sys
import django
PROJECT_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(PROJECT_ROOT) # 导入项目目录, 很关键
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "main.settings") # 單獨運行此文件需導入settings
django.setup()