Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
t = template.Template("My name is {{ name }}.")
File "C:\Python27\lib\site-packages\django\template\base.py", line 123, in __init__
if settings.TEMPLATE_DEBUG and origin is None:
File "C:\Python27\lib\site-packages\django\conf\__init__.py", line 54, in __getattr__
self._setup(name)
File "C:\Python27\lib\site-packages\django\conf\__init__.py", line 47, in _setup
% (desc, ENVIRONMENT_VARIABLE))
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.
参考资料:
django模板报错Requested setting TEMPLATE_DEBUG, but settings are not configured. You must either define
Traceback (most recent call last):
File "<pyshell#15>", line 1, in <module>
print t.render(c)
File "C:\Python27\lib\idlelib\PyShell.py", line 1344, in write
s = unicode.__getslice__(s, None, None)
TypeError: an integer is required
原因是因为 t.render(c) 输出的是Unicode字符串,知道了这一点,解决起来就非常容易了,最方便的就是直接用下面的语句
print t.render(c).encode()
本文介绍了在使用Django模板过程中遇到的TEMPLATE_DEBUG设置错误及解决方案。通过调整设置并确保环境变量DJANGO_SETTINGS_MODULE已定义或调用settings.configure(),可以避免出现配置不当导致的异常。此外,还提供了一个关于如何正确打印渲染后的Unicode字符串的示例。
1166

被折叠的 条评论
为什么被折叠?



