在使用django的喋碾翡疼模板系统的时候,如果你在python shell中使用,可能会出现“ImportError:Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULEis undefined. ”的错误。这是因为DJANGO_SETTINGS_MODULE变量没有设置,怎么设置是个大问题,我找遍网络没有完美的方法,现在鞋下来,以防以后忘记。
首先我们要将找到settings.py文件在哪里,它是用django创建站点的时候自动生成的配置文件。![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/58021a0148fe1e42a4809e62c2299a8838130343.jpg)
接着,我们来到python安装目录下的lib》site-packages目录下![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/4759c1dae43b3b8605cdd5e4185653bbf9207543.jpg)
添加一个pth文件,你用记事本打开,写入你的工程路径![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/974a2f21056104a34405191d63d7592ae2ef6b43.jpg)
打开计算机属性![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/e1390a31dfb6326c4d8a037c89532f6322856043.jpg)
打开高级系统设置![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/46a92de039723d039e06a435bb486143d6d45743.jpg)
打开环境变量![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/836a6aee1c324b1863c0164253a7263349844843.jpg)
新建一个变量![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/d3c39889a146b7b12915e50ec77c34b33d413540.jpg)
变量名和变量值分别是:![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/d2001d7de137c976f350e77644672b5fd4462b40.jpg)
打开python shell,我们使用一下模板,是不是已经没问题啦。![Django教程:[30]DJANGO_SETTINGS_MODULE配置](https://exp-picture.cdn.bcebos.com/b955ead0b503c8d29d12ddfd498333bf3aef2140.jpg)
dzb3688建议另一种解决方法:
pythonshell中不引用django的config,在python manage.pyshell中启动解释器的同时会自动依赖于配置文件。所以用pythonshell的时候import之前加入一下代码导入settings,先>>>fromdjango.confimportsettings
>>>settings.configure()