django TemplateView und form
Ich habe ein problem, herauszufinden, wie die neue django-views (template view) und Formen arbeiten kann ich auch nicht finden können gute Ressourcen, offizielle doc nicht erklären Sie mir, wie kann eine get-Anfrage ( ich meine get und post) und Formen in der neuen django-views-Klasse
Dank
Hinzugefügt, um besser zu erklären,
ich habe zum Beispiel in dieser form :
from django import forms
class ContactForm(forms.Form):
subject = forms.CharField(max_length=100)
message = forms.CharField()
sender = forms.EmailField()
cc_myself = forms.BooleanField(required=False)
- und dies ist der code für Lesen und drucken Sie das Formular (alte Art):
def contact(request):
if request.method == 'POST': # If the form has been submitted...
form = ContactForm(request.POST) # A form bound to the POST data
if form.is_valid(): # All validation rules pass
# Process the data in form.cleaned_data
# ...
return HttpResponseRedirect('/thanks/') # Redirect after POST
else:
form = ContactForm() # An unbound form
return render_to_response('contact.html', {
'form': form,
})
gut, meine Frage ist, wie können Sie das gleiche tun mit template-Ansicht Dank
warum -3 was ist falsch in meiner Frage?
InformationsquelleAutor LXG | 2011-11-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde empfehlen, nur Schaffe durch die offizielle tutorial und ich denke, Realisierung dawn und die Erleuchtung wird kommen automatisch.
Grundsätzlich:
Wenn Sie eine Anfrage an: "'http://mydomain/myblog/foo/bar"'
Django:
myblog/foo/bar
einer Funktion/Methode call through definierte Muster in urls.pymyblog.views.foo_bar_index(request)
.Den view-Funktion in der Regel die folgenden:
Der Vorlage generic-Ansicht können Sie überspringen, schreiben, die Funktion, und übergeben Sie im Kontext-Wörterbuch.
Unter Angabe der django-Dokumentation:
Alle Ansichten.generic.*View-Klassen haben Aussicht.generisches.Ansicht als Ihre Basis. In der docs zu, dass Sie die Informationen finden, die Sie benötigen.
Grundsätzlich:
MyView.as_view erzeugt ein callable, Aufrufe views.generisches.Blick.dispatch()
die wiederum rufen MyView.get(), MyView.post(), MyView.update () - etc.
die Sie überschreiben können.
Zitieren der Dokumente:
Die großen Pluspunkte von class based views (meiner Meinung nach):
InformationsquelleAutor AndreasT
Verwenden Sie eine FormView statt, d.h.
Mehr auf FormView in Django-Docs
Technisch TemplateView kann auch verwendet werden, nur überschreiben der Methode post, da per default template-Ansicht können Sie keine post von ihm:
Ich denke, das FormView macht mehr Sinn, obwohl.
InformationsquelleAutor radtek