From 55d7f6519c8d13a685cff3f9873b5784fc511a87 Mon Sep 17 00:00:00 2001 From: Jason Pellerin Date: Mon, 4 Dec 2006 21:12:29 +0000 Subject: [multi-db] Merged trunk to [4158]. Some tests still failing. git-svn-id: http://code.djangoproject.com/svn/django/branches/multiple-db-support@4159 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- tests/regressiontests/forms/tests.py | 907 ++++++++++++++++++++++++++++++++--- 1 file changed, 834 insertions(+), 73 deletions(-) (limited to 'tests') diff --git a/tests/regressiontests/forms/tests.py b/tests/regressiontests/forms/tests.py index 73fa3c27bf..bc38154d74 100644 --- a/tests/regressiontests/forms/tests.py +++ b/tests/regressiontests/forms/tests.py @@ -4,6 +4,14 @@ r""" >>> import datetime >>> import re +########### +# Widgets # +########### + +Each Widget class corresponds to an HTML form widget. A Widget knows how to +render itself, given a field name and some data. Widgets don't perform +validation. + # TextInput Widget ############################################################ >>> w = TextInput() @@ -156,10 +164,18 @@ u' -as_textarea() and as_text() are shortcuts for changing the output widget type: +as_textarea(), as_text() and as_hidden() are shortcuts for changing the output +widget type: >>> f['subject'].as_textarea() u'' >>> f['message'].as_text() u'' +>>> f['message'].as_hidden() +u'' The 'widget' parameter to a Field can also be an instance: >>> class ContactForm(Form): @@ -1069,7 +1519,8 @@ The 'widget' parameter to a Field can also be an instance: >>> print f['message'] -Instance-level attrs are *not* carried over to as_textarea() and as_text(): +Instance-level attrs are *not* carried over to as_textarea(), as_text() and +as_hidden(): >>> f['message'].as_text() u'' >>> f = ContactForm({'subject': 'Hello', 'message': 'I love you.'}) @@ -1077,6 +1528,8 @@ u'' u'' >>> f['message'].as_text() u'' +>>> f['message'].as_hidden() +u'' For a form with a , use ChoiceField: +Add widget=RadioSelect to use that widget with a ChoiceField. +>>> class FrameworkForm(Form): +... name = CharField() +... language = ChoiceField(choices=[('P', 'Python'), ('J', 'Java')], widget=RadioSelect) +>>> f = FrameworkForm() +>>> print f['language'] + +>>> print f +Name: +Language: +>>> print f.as_ul() +
  • Name:
  • +
  • Language:
  • + +Regarding auto_id and