Django视图渲染时ValueError错误
我正在学习Django,为了一个即将到来的项目,我在看一些教程。但是我发现无法正确加载模板。调试模式下出现了一个“ValueError”的错误,提示“需要更多的值来解包”。我是在运行Django自带的服务器。你知道问题出在哪里吗?任何帮助都非常感谢。
这是错误追踪信息:
Traceback:
File "/Library/Python/2.7/site-packages/django/core/handlers/base.py" in get_response
111. response = callback(request, *callback_args, **callback_kwargs)
File "/Users/tinwaijosephlee/Sites/djcode/dev2/../dev2/views.py" in hours_ahead
26. return render_to_response('plus.html', {'offset': offset, 'dt': dt})
File "/Library/Python/2.7/site-packages/django/shortcuts/__init__.py" in render_to_response
20. return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)
File "/Library/Python/2.7/site-packages/django/template/loader.py" in render_to_string
181. t = get_template(template_name)
File "/Library/Python/2.7/site-packages/django/template/loader.py" in get_template
157. template, origin = find_template(template_name)
File "/Library/Python/2.7/site-packages/django/template/loader.py" in find_template
128. loader = find_template_loader(loader_name)
File "/Library/Python/2.7/site-packages/django/template/loader.py" in find_template_loader
93. module, attr = loader.rsplit('.', 1)
这是我的视图代码:
from django.shortcuts import render_to_response
from django.http import HttpResponse
import datetime
import sys
import os
def current_datetime(request):
now = datetime.datetime.now()
return render_to_response('current_datetime.html', {'current_date': now})
def hours_ahead(request, offset):
offset = int(offset)
dt = datetime.datetime.now() + datetime.timedelta(hours=offset)
return render_to_response('plus.html', {'offset': offset, 'dt': dt})
这是我的urls.py文件:
from django.conf.urls.defaults import *
from dev2.views import *
urlpatterns = patterns('',
(r'^time/$', current_datetime),
(r'^time/plus/(\d{1,2})/$', hours_ahead),
)
这是settings.py中的模板加载器配置:
TEMPLATE_LOADERS = (
'/Users/some_user_name/Sites/djcode/dev2/template',
)
这是模板的html文件:
<html><head></head><body>It is now {{ current_date }}.</body></html>
1 个回答
6
你在settings.py文件里设置错了。TEMPLATE_LOADERS
是用来找和加载模板的Python代码。你应该把你的目录放到TEMPLATE_DIRS
里。