使用django.template时出错

使用django.template时出错,django,django-models,django-templates,Django,Django Models,Django Templates,我是django的初学者,在使用django的模板模块时犯了很多错误。 以下是python shell的工作原理: from django import template t = template.Template('My name is {{ name }}.') 使用此代码时,会出现以下错误: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/p

我是django的初学者,在使用django的模板模块时犯了很多错误。 以下是python shell的工作原理:

from django import template
t = template.Template('My name is {{ name }}.')
使用此代码时,会出现以下错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/django/template/base.py", line 123, in __init__
 if settings.TEMPLATE_DEBUG and origin is None:
File "/usr/lib/python2.7/site-packages/django/conf/__init__.py", line 53, in __getattr__
self._setup(name)
File "/usr/lib/python2.7/site-packages/django/conf/__init__.py", line 46, in _setup
% (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting TEMPLATE_DEBUG,but        
settings are not configured. You must either define the environment variable 
DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/lib/python2.7/site packages/django/template/base.py”,第123行,在__
如果settings.TEMPLATE_DEBUG and origin为无:
文件“/usr/lib/python2.7/site packages/django/conf/_init__.py”,第53行,在_getattr中__
自我设置(名称)
文件“/usr/lib/python2.7/site packages/django/conf/_init__.py”,第46行,在安装程序中
%(描述,环境变量)
django.core.exceptions.ImpropertlyConfigured:请求的设置模板\u调试,但
未配置设置。您必须定义环境变量
DJANGO_SETTINGS_模块或调用SETTINGS.configure(),然后访问设置。

有人知道这个错误吗

您无法从python shell访问和运行django项目。Django不知道你想做什么项目

您必须执行以下操作之一:

1. python manage.py shell
2. Set DJANGO_SETTINGS_MODULE environment variable in your OS to mysite.settings
3. Use setup_environ in the python interpreter:
   from django.core.management import setup_environ
   from mysite import settings
   setup_environ(settings)

第一种方法是最简单和最好的方法。在django shell中运行代码。

我也遇到了同样的问题

主要的一点是,在django book 2中,这段代码不允许用户将其放入从Python.exe启动的Python IDLE中(可能是在Windows上的C:\Program Files\Python33中)

相反,它只是显示代码片段的外观。解决方案就是运行“cmd”并将目录更改为“mysite”,然后运行

python manage.py shell


确保使用“mysite.settings.py”。

如果要在不使用django shell的情况下使用模板系统,可以执行以下操作:

from django.conf import settings
settings.configure()
在这之后你的代码是什么

t = template.Template('My name is {{ name }}.')

当然,@Sudipta的答案是正确的,但是(只是为了将来)对于解释,您还可以访问“
创建模板对象”
”->“
一个特殊的Python提示符”
”部分来解决这个问题,您需要在
Python manage.py shell中运行它,而不仅仅是
Python


原因:好吧,Django的许多部分依赖于设置,在它知道要使用哪个设置文件之前,您将无法使用它们。当您在
python manage.py shell上运行它时,Django知道要使用哪个设置文件并为您执行此任务。

错误消息指出您需要设置
Django\u settings\u模块
变量。
运行导出DJANGO#u设置模块=mysite.SETTINGS对我来说很有效。

谢谢你的解决方案。很抱歉重新启动此功能,但是如何使用选项2和选项3?感谢你提供了此干净的解决方案。对于DJANGO>1.7,还需要:导入DJANGO DJANGO.setup()