本文是笔者在单独运行python脚本的时候,脚本中调用了django项目中的类或者模型
先上错误码
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG,
but settings are not configured. You must either define the environment variable
DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
报错是因为没有声明环境变量
解决方案:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project_name.settings")
注意将project_name替换成自己的项目名字
假设说你从view里面导入使用到的model,以上已经完成,但是如果从model里面导入,在某些情况下会报错(笔者没有深究为什么)
ImportError: cannot import name "xxxxxxx"
如果从model中导入出现了上述错误,那么应该加入
import django
django.setup()
经过以上操作应该已经解决
题外话,如果使用pycharm,可以添加DJANGO_SETTINGS_MODULE环境变量:
- Run --> Edit Configurations --> Environment variables --> 点击$符号添加
- name 填
DJANGO_SETTINGS_MODULE
value填 项目配置文件的绝对路径
实际上和上面设置是一样的
以上针对小白,如想深入了解,参考连接:
老江的博客教程