Python-Django:找不到模板
我是Python和Django的新手,一直在努力学习如何为我的网站制作注册表单。我正在关注本教程https://www.youtube.com/watch?v=Tam4IGrPESg。我有一切工作到registration_success页面。以下是我认为是相关代码:Python-Django:找不到模板
settings.py
TEMPLATE_DIRS = (
TEMPLATE_PATH + '/templates/',
TEMPLATE_PATH + '/templates/registration',
)
urls.py
#registration
(r'^register/$', register_user),
(r'^registration_success/$', registration_success),
views.py
def register_user(request):
if request.method == 'POST':
form = UserCreationForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('registration_success')
args = {}
args.update(csrf(request))
print (args)
args['form'] = UserCreationForm()
return render_to_response('register.html',args)
def registration_success(request):
return render_to_response('registration_success.html')
我得到的错误是这个:
Page not found (404)
Request Method: GET
Request URL: http://localhost:8000/register/registration_success
Using the URLconf defined in tut_1.urls, Django tried these URL patterns, in this order:
^$
^login/$
^logout/$
^register/$
^registration_success/$
^portal/
^static/(?P<path>.*)$
The current URL, registration/registration_success, didn't match any of these.
我不确定tbh到底发生了什么。我注意到的是,URL是:http:// localhost:8000/register/registration_success。为什么要注册/注册_...?它不应该是注册/ registration_success?
在此先感谢。
return HttpResponseRedirect('registration_success')
您正在重定向到相对于当前网址的路径。这就解释了为什么你被路由到/ register/registration_success。
为了解决这个问题,你需要使用一个根目录相对路径
return HttpResponseRedirect('/registration_success/')
感谢您的回复。我尝试了你的建议,但我最终得到了一个循环。纠正我,如果我错了/ registration_success /将调用registration_success函数并重复循环?我真的不知道我做了什么,但我没有更改我发布的任何代码,现在它可以工作......不幸的是,我不能说我做了什么... – Szpok 2014-11-04 01:00:39
该错误不在于它无法找到模板,但它无法找到您请求的页面:即你的网址不匹配。该消息非常清晰,并没有提到模板一次。 – 2014-11-03 07:34:27