使用Django时在命令行中敲击Python命令进入交互模式,如果直接如下操作:from django.template import Template ,Contextt = Template(”Test is {{test}}”)
会导致:
ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.
原因是django的配置信息没有初始化。解决方法有两种:(1)切换到Project或者APP所在的目录使用manage.py shell(或者python manage.py shell)命令启动交互窗口;(2)手动将django的配置初始化:from django.conf import settingssettings.configure()
原理(来源http://djangobook.py3k.cn/2.0/chapter04/):
如果你曾经使用过Python,你一定好奇,为什么我们运行python manage.py shell而不是python。这两个命令都会启动交互解释器,但是manage.py shell命令有一个重要的不同: 在启动解释器之前,它告诉Django使用哪个设置文件。 Django框架的大部分子系统,包括模板系统,都依赖于配置文件;如果Django不知道使用哪个配置文件,这些系统将不能工作。
如果你想知道,这里将向你解释它背后是如何工作的。 Django搜索DJANGO_SETTINGS_MODULE环境变量,它被设置在settings.py中。例如,假设mysite在你的Python搜索路径中,那么DJANGO_SETTINGS_MODULE应该被设置为:’mysite.settings’。
1
当你运行命令:python manage.py shell,它将自动帮你处理DJANGO_SETTINGS_MODULE。 在当前的这些示例中,我们鼓励你使用`` python manage.py shell``这个方法,这样可以免去你大费周章地去配置那些你不熟悉的环境变量。
随着你越来越熟悉Django,你可能会偏向于废弃使用`` manage.py shell`` ,而是在你的配置文件.bash_profile中手动添加 DJANGO_SETTINGS_MODULE这个环境变量。
来至:
http://2057.iteye.com/blog/792762
分享到:
相关推荐
在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)时,可能会遇到导入错误ImportError,具体表现为"Could not find 'cudnn64_7.dll'"。这个错误通常是由于CUDA(NVIDIA的Compute Unified Device Architecture)环境配置...
在Python编程环境中,有时我们可能会遇到“cannot import name '_AES'”这样的错误,尤其是在尝试导入`Crypto.Cipher.AES`模块时。这个问题通常出现在使用了`pycryptodome`库或者`pycrypto`库尝试进行AES加密解密...
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myorm.settings') try: from django.core.management import execute_from_command_line except ImportError as exc: raise ImportError( "Couldn't import...
问题描述 在使用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...
将dll 下面的dll 文件拷贝到下面目录,windows server 系统缺少动态库 具体位置根据系统版本,我的cv2位置在此, C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\cv2
在Windows10环境下编写Python3代码,导入AES模块时会提示无法...cannot import name '_AES' 原因是因为AES模块中只有Linux版本的代码,并没有Windows64位的模块。 附件压缩包内主要就是增补了Windows64位系统的模块
在Python编程中,遇到"ImportError: DLL load failed: 找不到指定的模块"这样的错误,通常意味着在尝试导入特定的Python模块时,系统无法找到该模块依赖的一些动态链接库(DLL)文件。在这个问题中,错误是针对...
解决官方版CPU不支持AVX的ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.采用SSE2编译版本
在Python3中使用HTMLTestRunner.py时,可能会遇到一个常见的问题,即报出"ImportError: No module named 'StringIO'"的错误。这个问题的出现,主要是因为在Python3中,StringIO模块已经被io模块中的StringIO类所取代...
在Python编程环境中,当你遇到“ImportError: cannot import name '_AES'”这样的错误时,这通常意味着你尝试导入的某个Python模块或库依赖于一个名为`_AES`的C扩展部分,而这个部分没有被正确地编译或安装。...
在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的版本有问题 这个错误在安装...
在使用Windows 10 x64系统安装TensorFlow-GPU版本时,可能会遇到一个常见的错误,即`ImportError: Could not find 'cudart64_100.dll'`。这个错误通常意味着系统无法找到CUDA运行时库的特定动态链接库文件,这可能...
在安装好Anaconda+PyCharm环境后,第二天打开Pycharm运行程序出现问题:ImportError:DLL load failed。但是在Anaconda Prompt下可以正常运行。 在尝试使用命令卸载和安装numpy等一系列操作后,问题任然没有解决。 ...