该视图未返回HttpResponse对象

时间:2013-06-11 03:55:46

标签: django forms views registration

我正在按照教程尝试创建注册表单。即使录制它的人能够创建一个表单,我也不知道我的代码中是否有任何错误?该视图未返回HttpResponse对象。

from django.template import RequestContext
from django.http import HttpResponseRedirect
from django.shortcuts import render_to_response
from django.contrib import auth
from django.core.context_processors import csrf
from django.contrib.auth.forms import UserCreationForm

def registerit(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect('/accounts/register_success')
        args = {'form3':UserCreationForm()}
        args.update(csrf(request))
        return render_to_response('register.html', args)

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

仅在HttpResponse

时才返回if request.method == 'POST':个对象

但是如果请求方法是__not POST,则表示您没有返回任何内容。您可能需要将代码缩进到左侧一级。

def registerit(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect('/accounts/register_success')
    args = {'form3':UserCreationForm()}
    args.update(csrf(request))
    return render_to_response('register.html', args)