From d43522b077bb0c8070aba1821fe029b196cb93b8 Mon Sep 17 00:00:00 2001 From: Russell Keith-Magee Date: Sun, 20 May 2007 02:18:22 +0000 Subject: [PATCH] Modified the example views in newforms.txt to include a HttpResponseRedirect (as per best practice), and remove a duplicated form instantiation. git-svn-id: http://code.djangoproject.com/svn/django/trunk@5295 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- docs/newforms.txt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/newforms.txt b/docs/newforms.txt index 4d2400afcc2..a94cc665c55 100644 --- a/docs/newforms.txt +++ b/docs/newforms.txt @@ -321,6 +321,7 @@ Putting this all together, here is a simple view method that uses our contact form:: from django.shortcuts import render_to_response + from django.http import HttpResponseRedirect from django import newforms as forms class ContactForm(forms.Form): @@ -334,6 +335,7 @@ form:: f = ContactForm(request.POST) if f.is_valid: # ... do something with f.cleaned_data + return HttpResponseRedirect('/url/on_success/') else: f = ContactForm() return render_to_response('contact.html', {'form': f}) @@ -658,12 +660,13 @@ these parts from the template designer's point of view. Assuming you start with a view like this:: def contact(request): - form = ContactForm() if request.method == 'POST': - new_data = request.POST.copy() - form = ContactForm(new_data) + form = ContactForm(request.POST) if form.is_valid(): # do form processing here... + return HttpResponseRedirect('/url/on_success/') + else: + form = ContactForm() return render_to_response('contact.html', {'form': form}) ...you can have a simple template that uses the shortcuts ``form.as_ul``,