0

登録フォームを作成しようとするチュートリアルに従っていました。それを記録した人がフォームを作成できたとしても、誰も私のコードに間違いを見ませんか? ビューは 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)

ご協力ありがとうございました。

4

1 に答える 1

1

HttpResponse次の場合にのみオブジェクトを返しますif request.method == 'POST':

ただし、リクエスト メソッドが __notPOSTの場合、何も返されません。おそらく、コードを 1 レベル左にインデントする必要があります。

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)
于 2013-06-11T03:57:07.557 に答える