ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.
出现这个错误问题的原因正如错误报告所写:无法导入 Settings, DJANGO_SETTINGS_MODULE 环境变量没有定义。有以下几种解决方法:
1). 最简单的解决办法是在项目或app当前目录下,进入python命令界面时,使用python manager.py shell 代替 python。因为Django manager.py 会使用模板加载器自动查找当前目录下的settings.py 信息,加载器文件中包含from django.conf import settings导入所需的django settings配置,就不会出错了:
$ python manage.py shell
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from django import template
>>> t = template.Template('My name is {{ name }}.')
>>>
2). 若使用>>> python命令,则通过自己从正确的包中导入settings并手动配置也可以:
$ python
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from django import template
>>> from django.conf import settings
>>> settings.configure()
>>> t = template.Template('My name is {{ name }}.')
>>>
即在使用Django的template模板前,先执行 from django.conf import settings 和 settings.configure()。
3). 手动添加当前项目或app的 DJANGO_SETTINGS_MODULE 环境变量.(假设project名称为mysite):
必须先在Linux命令行将项目路径(上一级路径)添加到PYTHONPATH 中: $ export PYTHONPATH="$PYTHONPATH:/path/to/mysite/" 和 $ export PYTHONPATH="$PYTHONPATH:/path/to/"。 在python 命令界面可以使用import sys 和 sys.path.append('/path/to/mysite/')实现,
再设置DJANGO_SETTINGS_MODULE 环境变量:$ export DJANGO_SETTINGS_MODULE=mysite.settings
环境变量下次系统重启会自动重置,因此可以在配置文件~/.profile中加入上面两句export,在登录时自动设置DJANGO_SETTINGS_MODULE环境变量。
分享到:
相关推荐
在Python和Django框架的开发过程中,可能会遇到各种错误,其中"ImportError:无法从'django.utils.encoding'导入名称'force text'"是一个常见的问题。这个错误意味着你的代码尝试从'django.utils.encoding'模块导入...
然而,当你尝试导入`cv2`时,可能会遇到`ImportError: DLL load fail:找不到指定模块`这样的错误。这个错误通常表明你的系统缺少一个或多个动态链接库(DLL)文件,这些文件是OpenCV运行所必需的。 OpenCV是用C++...
ImportError: No module named fcntl #fcntl.py #ImportError
然而,当你尝试运行含有此语句的Python脚本时,出现"ImportError: DLL load failed while import cv2: 找不到指定的模块。"的错误,这意味着系统无法找到或加载必要的动态链接库(DLL)文件,这是OpenCV库运行所必需...
ubuntu系统中import h5py, ImportError: No module named h5py的解决方法
问题描述 在使用paddlepaddle进行深度学习过程中需要导入Ploter from paddle.v2.plot import Ploter 但出现问题: Traceback (most recent call last): File D:/xxx.py, line 13, in from paddle.v2.plot import...
在Windows10环境下编写Python3代码,导入AES模块时会提示无法...cannot import name '_AES' 原因是因为AES模块中只有Linux版本的代码,并没有Windows64位的模块。 附件压缩包内主要就是增补了Windows64位系统的模块
将dll 下面的dll 文件拷贝到下面目录,windows server 系统缺少动态库 具体位置根据系统版本,我的cv2位置在此, C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\cv2
解决官方版CPU不支持AVX的ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.采用SSE2编译版本
在使用深度学习框架如百度飞桨(PaddlePaddle)时,可能会遇到导入错误ImportError,具体表现为"Could not find 'cudnn64_7.dll'"。这个错误通常是由于CUDA(NVIDIA的Compute Unified Device Architecture)环境配置...
在Python编程环境中,有时我们可能会遇到“cannot import name '_AES'”这样的错误,尤其是在尝试导入`Crypto.Cipher.AES`模块时。这个问题通常出现在使用了`pycryptodome`库或者`pycrypto`库尝试进行AES加密解密...
在Python3中使用HTMLTestRunner.py时,可能会遇到一个常见的问题,即报出"ImportError: No module named 'StringIO'"的错误。这个问题的出现,主要是因为在Python3中,StringIO模块已经被io模块中的StringIO类所取代...
在Python编程中,遇到"ImportError: DLL load failed: 找不到指定的模块"这样的错误,通常意味着在尝试导入特定的Python模块时,系统无法找到该模块依赖的一些动态链接库(DLL)文件。在这个问题中,错误是针对...
在Python编程过程中,可能会遇到各种导入模块时的错误,其中之一就是"ImportError: No module named fcntl"。这个错误提示表明Python无法找到名为`fcntl`的模块,这通常是由于系统中缺少该模块或者模块的安装路径...
错误:ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory 问题:找不到cuda9.0的版本。 出现该错误的主要原因:cuda未安装或者cuda的版本有问题 这个错误在安装...
ImportError: DLL load failed: 找不到指定的模块。 … During handling of the above exception, another exception occurred: Traceback (most recent call last): File “******”, line 1, in import ...
解决import cv2 出现 ImportError:DLL load fail:找不到指定模块,所需要的dll文件
numpy+matplotlib+scipy+部分问题的解决方法; 错误:six 1.3 or later is required; you have 1.2.0; 错误:ImportError: matplotlib requires pyparsing; 安装dateutil :
在安装好Anaconda+PyCharm环境后,第二天打开Pycharm运行程序出现问题:ImportError:DLL load failed。但是在Anaconda Prompt下可以正常运行。 在尝试使用命令卸载和安装numpy等一系列操作后,问题任然没有解决。 ...