Author: bouldersprinters
Date: 2007-03-28 16:28:59 -0500 (Wed, 28 Mar 2007)
New Revision: 4841
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/empty/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/field_defaults/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/fixtures/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/generic_relations/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/get_object_or_404/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/get_or_create/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_and_m2o/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_recursive/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/manipulators/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/model_forms/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/pagination/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/select_related/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/serializers/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/test_client/models.py
django/branches/boulder-oracle-sprint/tests/modeltests/validation/models.py
django/branches/boulder-oracle-sprint/tests/regressiontests/forms/tests.py
django/branches/boulder-oracle-sprint/tests/regressiontests/templates/tests.py
Log:
boulder-oracle-sprint: Merged to [4839].
Modified: django/branches/boulder-oracle-sprint/tests/modeltests/empty/models.py
===================================================================
--- django/branches/boulder-oracle-sprint/tests/modeltests/empty/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++ django/branches/boulder-oracle-sprint/tests/modeltests/empty/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-Empty model tests
+39. Empty model tests
These test that things behave sensibly for the rare corner-case of a model with
no fields.
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/field_defaults/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/field_defaults/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/field_defaults/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-31. Callable defaults
+32. Callable defaults
You can pass callable objects as the ``default`` parameter to a field. When
the object is created without an explicit value passed in, Django will call
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/fixtures/models.py
===================================================================
--- django/branches/boulder-oracle-sprint/tests/modeltests/fixtures/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++ django/branches/boulder-oracle-sprint/tests/modeltests/fixtures/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-39. Fixtures.
+37. Fixtures.
Fixtures are a way of loading data into the database in bulk. Fixure data
can be stored in any serializable format (including JSON and XML). Fixtures
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/generic_relations/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/generic_relations/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/generic_relations/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-33. Generic relations
+34. Generic relations
Generic relations let an object have a foreign key to any object through a
content-type/object-id field. A generic foreign key can point to any object,
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/get_object_or_404/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/get_object_or_404/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/get_object_or_404/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-34. DB-API Shortcuts
+35. DB-API Shortcuts
get_object_or_404 is a shortcut function to be used in view functions for
performing a get() lookup and raising a Http404 exception if a DoesNotExist
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/get_or_create/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/get_or_create/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/get_or_create/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-32. get_or_create()
+33. get_or_create()
get_or_create() does what it says: it tries to look up an object with the given
parameters. If an object isn't found, it creates one with the given parameters.
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_and_m2o/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_and_m2o/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_and_m2o/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-28. Many-to-many and many-to-one relationships to the same table
+29. Many-to-many and many-to-one relationships to the same table
Make sure to set ``related_name`` if you use relationships to the same table.
"""
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_recursive/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_recursive/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/m2m_recursive/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-27. Many-to-many relationships between the same two tables
+28. Many-to-many relationships between the same two tables
In this example, A Person can have many friends, who are also people.
Friendship is a
symmetrical relationship - if I am your friend, you are my friend.
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/manipulators/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/manipulators/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/manipulators/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-26. Default manipulators
+27. Default manipulators
Each model gets an AddManipulator and ChangeManipulator by default.
"""
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/model_forms/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/model_forms/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/model_forms/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-34. Generating HTML forms from models
+36. Generating HTML forms from models
Django provides shortcuts for creating Form objects from a model class and a
model instance.
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/pagination/models.py
===================================================================
--- django/branches/boulder-oracle-sprint/tests/modeltests/pagination/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++ django/branches/boulder-oracle-sprint/tests/modeltests/pagination/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-29. Object pagination
+30. Object pagination
Django provides a framework for paginating a list of objects in a few lines
of code. This is often useful for dividing search results or long lists of
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/select_related/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/select_related/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/select_related/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-XXX. Tests for ``select_related()``
+40. Tests for select_related()
``select_related()`` follows all relationships and pre-caches any foreign key
values so that complex trees can be fetched in a single query. However, this
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/serializers/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/serializers/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/serializers/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-XXX. Serialization
+41. Serialization
``django.core.serializers`` provides interfaces to converting Django querysets
to and from "flat" data (i.e. strings).
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/test_client/models.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/modeltests/test_client/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/modeltests/test_client/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-39. Testing using the Test Client
+38. Testing using the Test Client
The test client is a class that can act like a simple
browser for testing purposes.
Modified:
django/branches/boulder-oracle-sprint/tests/modeltests/validation/models.py
===================================================================
--- django/branches/boulder-oracle-sprint/tests/modeltests/validation/models.py
2007-03-28 20:55:46 UTC (rev 4840)
+++ django/branches/boulder-oracle-sprint/tests/modeltests/validation/models.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -1,5 +1,5 @@
"""
-30. Validation
+31. Validation
This is an experimental feature!
Modified:
django/branches/boulder-oracle-sprint/tests/regressiontests/forms/tests.py
===================================================================
--- django/branches/boulder-oracle-sprint/tests/regressiontests/forms/tests.py
2007-03-28 20:55:46 UTC (rev 4840)
+++ django/branches/boulder-oracle-sprint/tests/regressiontests/forms/tests.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -3556,6 +3556,329 @@
>>> f.clean('')
u''
+# FRZipCodeField #############################################################
+
+FRZipCodeField validates that the data is a valid FR zipcode.
+>>> from django.contrib.localflavor.fr.forms import FRZipCodeField
+>>> f = FRZipCodeField()
+>>> f.clean('75001')
+u'75001'
+>>> f.clean('93200')
+u'93200'
+>>> f.clean('2A200')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a zip code in the format XXXXX.']
+>>> f.clean('980001')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a zip code in the format XXXXX.']
+>>> f.clean(None)
+Traceback (most recent call last):
+...
+ValidationError: [u'This field is required.']
+>>> f.clean('')
+Traceback (most recent call last):
+...
+ValidationError: [u'This field is required.']
+
+>>> f = FRZipCodeField(required=False)
+>>> f.clean('75001')
+u'75001'
+>>> f.clean('93200')
+u'93200'
+>>> f.clean('2A200')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a zip code in the format XXXXX.']
+>>> f.clean('980001')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a zip code in the format XXXXX.']
+>>> f.clean(None)
+u''
+>>> f.clean('')
+u''
+
+
+# FRPhoneNumberField ##########################################################
+
+FRPhoneNumberField validates that the data is a valid french phone number.
+It's normalized to 0X XX XX XX XX format. Dots are valid too.
+>>> from django.contrib.localflavor.fr.forms import FRPhoneNumberField
+>>> f = FRPhoneNumberField()
+>>> f.clean('01 55 44 58 64')
+u'01 55 44 58 64'
+>>> f.clean('0155445864')
+u'01 55 44 58 64'
+>>> f.clean('01 5544 5864')
+u'01 55 44 58 64'
+>>> f.clean('01 55.44.58.64')
+u'01 55 44 58 64'
+>>> f.clean('01.55.44.58.64')
+u'01 55 44 58 64'
+>>> f.clean('01,55,44,58,64')
+Traceback (most recent call last):
+...
+ValidationError: [u'Phone numbers must be in 0X XX XX XX XX format.']
+>>> f.clean('555 015 544')
+Traceback (most recent call last):
+...
+ValidationError: [u'Phone numbers must be in 0X XX XX XX XX format.']
+>>> f.clean(None)
+Traceback (most recent call last):
+...
+ValidationError: [u'This field is required.']
+>>> f.clean('')
+Traceback (most recent call last):
+...
+ValidationError: [u'This field is required.']
+
+>>> f = FRPhoneNumberField(required=False)
+>>> f.clean('01 55 44 58 64')
+u'01 55 44 58 64'
+>>> f.clean('0155445864')
+u'01 55 44 58 64'
+>>> f.clean('01 5544 5864')
+u'01 55 44 58 64'
+>>> f.clean('01 55.44.58.64')
+u'01 55 44 58 64'
+>>> f.clean('01.55.44.58.64')
+u'01 55 44 58 64'
+>>> f.clean('01,55,44,58,64')
+Traceback (most recent call last):
+...
+ValidationError: [u'Phone numbers must be in 0X XX XX XX XX format.']
+>>> f.clean('555 015 544')
+Traceback (most recent call last):
+...
+ValidationError: [u'Phone numbers must be in 0X XX XX XX XX format.']
+>>> f.clean(None)
+u''
+>>> f.clean('')
+u''
+
+# FRDepartmentSelect
###############################################################
+
+FRDepartmentSelect is a Select widget that uses a list of french departments
+including DOM TOM
+>>> from django.contrib.localflavor.fr.forms import FRDepartmentSelect
+>>> w = FRDepartmentSelect()
+>>> print w.render('dep', 'Paris')
+<select name="dep">
+<option value="01">01 - Ain</option>
+<option value="02">02 - Aisne</option>
+<option value="03">03 - Allier</option>
+<option value="04">04 - Alpes-de-Haute-Provence</option>
+<option value="05">05 - Hautes-Alpes</option>
+<option value="06">06 - Alpes-Maritimes</option>
+<option value="07">07 - Ardeche</option>
+<option value="08">08 - Ardennes</option>
+<option value="09">09 - Ariege</option>
+<option value="10">10 - Aube</option>
+<option value="11">11 - Aude</option>
+<option value="12">12 - Aveyron</option>
+<option value="13">13 - Bouches-du-Rhone</option>
+<option value="14">14 - Calvados</option>
+<option value="15">15 - Cantal</option>
+<option value="16">16 - Charente</option>
+<option value="17">17 - Charente-Maritime</option>
+<option value="18">18 - Cher</option>
+<option value="19">19 - Correze</option>
+<option value="21">21 - Cote-d'Or</option>
+<option value="22">22 - Cotes-d'Armor</option>
+<option value="23">23 - Creuse</option>
+<option value="24">24 - Dordogne</option>
+<option value="25">25 - Doubs</option>
+<option value="26">26 - Drome</option>
+<option value="27">27 - Eure</option>
+<option value="28">28 - Eure-et-Loire</option>
+<option value="29">29 - Finistere</option>
+<option value="2A">2A - Corse-du-Sud</option>
+<option value="2B">2B - Haute-Corse</option>
+<option value="30">30 - Gard</option>
+<option value="31">31 - Haute-Garonne</option>
+<option value="32">32 - Gers</option>
+<option value="33">33 - Gironde</option>
+<option value="34">34 - Herault</option>
+<option value="35">35 - Ille-et-Vilaine</option>
+<option value="36">36 - Indre</option>
+<option value="37">37 - Indre-et-Loire</option>
+<option value="38">38 - Isere</option>
+<option value="39">39 - Jura</option>
+<option value="40">40 - Landes</option>
+<option value="41">41 - Loir-et-Cher</option>
+<option value="42">42 - Loire</option>
+<option value="43">43 - Haute-Loire</option>
+<option value="44">44 - Loire-Atlantique</option>
+<option value="45">45 - Loiret</option>
+<option value="46">46 - Lot</option>
+<option value="47">47 - Lot-et-Garonne</option>
+<option value="48">48 - Lozere</option>
+<option value="49">49 - Maine-et-Loire</option>
+<option value="50">50 - Manche</option>
+<option value="51">51 - Marne</option>
+<option value="52">52 - Haute-Marne</option>
+<option value="53">53 - Mayenne</option>
+<option value="54">54 - Meurthe-et-Moselle</option>
+<option value="55">55 - Meuse</option>
+<option value="56">56 - Morbihan</option>
+<option value="57">57 - Moselle</option>
+<option value="58">58 - Nievre</option>
+<option value="59">59 - Nord</option>
+<option value="60">60 - Oise</option>
+<option value="61">61 - Orne</option>
+<option value="62">62 - Pas-de-Calais</option>
+<option value="63">63 - Puy-de-Dome</option>
+<option value="64">64 - Pyrenees-Atlantiques</option>
+<option value="65">65 - Hautes-Pyrenees</option>
+<option value="66">66 - Pyrenees-Orientales</option>
+<option value="67">67 - Bas-Rhin</option>
+<option value="68">68 - Haut-Rhin</option>
+<option value="69">69 - Rhone</option>
+<option value="70">70 - Haute-Saone</option>
+<option value="71">71 - Saone-et-Loire</option>
+<option value="72">72 - Sarthe</option>
+<option value="73">73 - Savoie</option>
+<option value="74">74 - Haute-Savoie</option>
+<option value="75">75 - Paris</option>
+<option value="76">76 - Seine-Maritime</option>
+<option value="77">77 - Seine-et-Marne</option>
+<option value="78">78 - Yvelines</option>
+<option value="79">79 - Deux-Sevres</option>
+<option value="80">80 - Somme</option>
+<option value="81">81 - Tarn</option>
+<option value="82">82 - Tarn-et-Garonne</option>
+<option value="83">83 - Var</option>
+<option value="84">84 - Vaucluse</option>
+<option value="85">85 - Vendee</option>
+<option value="86">86 - Vienne</option>
+<option value="87">87 - Haute-Vienne</option>
+<option value="88">88 - Vosges</option>
+<option value="89">89 - Yonne</option>
+<option value="90">90 - Territoire de Belfort</option>
+<option value="91">91 - Essonne</option>
+<option value="92">92 - Hauts-de-Seine</option>
+<option value="93">93 - Seine-Saint-Denis</option>
+<option value="94">94 - Val-de-Marne</option>
+<option value="95">95 - Val-d'Oise</option>
+<option value="2A">2A - Corse du sud</option>
+<option value="2B">2B - Haute Corse</option>
+<option value="971">971 - Guadeloupe</option>
+<option value="972">972 - Martinique</option>
+<option value="973">973 - Guyane</option>
+<option value="974">974 - La Reunion</option>
+<option value="975">975 - Saint-Pierre-et-Miquelon</option>
+<option value="976">976 - Mayotte</option>
+<option value="984">984 - Terres Australes et Antarctiques</option>
+<option value="986">986 - Wallis et Futuna</option>
+<option value="987">987 - Polynesie Francaise</option>
+<option value="988">988 - Nouvelle-Caledonie</option>
+</select>
+
+# JPPostalCodeField
###############################################################
+
+A form field that validates its input is a Japanese postcode.
+
+Accepts 7 digits(with/out hyphen).
+>>> from django.contrib.localflavor.jp.forms import JPPostalCodeField
+>>> f = JPPostalCodeField()
+>>> f.clean('251-0032')
+u'2510032'
+>>> f.clean('2510032')
+u'2510032'
+>>> f.clean('2510-032')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
+>>> f.clean('251a0032')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
+>>> f.clean('a51-0032')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
+>>> f.clean('25100321')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
+>>> f.clean('')
+Traceback (most recent call last):
+...
+ValidationError: [u'This field is required.']
+
+>>> f = JPPostalCodeField(required=False)
+>>> f.clean('251-0032')
+u'2510032'
+>>> f.clean('2510032')
+u'2510032'
+>>> f.clean('2510-032')
+Traceback (most recent call last):
+...
+ValidationError: [u'Enter a postal code in the format XXXXXXX or XXX-XXXX.']
+>>> f.clean('')
+u''
+>>> f.clean(None)
+u''
+
+# JPPrefectureSelect
###############################################################
+
+A Select widget that uses a list of Japanese prefectures as its choices.
+>>> from django.contrib.localflavor.jp.forms import JPPrefectureSelect
+>>> w = JPPrefectureSelect()
+>>> print w.render('prefecture', 'kanagawa')
+<select name="prefecture">
+<option value="hokkaido">Hokkaido</option>
+<option value="aomori">Aomori</option>
+<option value="iwate">Iwate</option>
+<option value="miyagi">Miyagi</option>
+<option value="akita">Akita</option>
+<option value="yamagata">Yamagata</option>
+<option value="fukushima">Fukushima</option>
+<option value="ibaraki">Ibaraki</option>
+<option value="tochigi">Tochigi</option>
+<option value="gunma">Gunma</option>
+<option value="saitama">Saitama</option>
+<option value="chiba">Chiba</option>
+<option value="tokyo">Tokyo</option>
+<option value="kanagawa" selected="selected">Kanagawa</option>
+<option value="yamanashi">Yamanashi</option>
+<option value="nagano">Nagano</option>
+<option value="niigata">Niigata</option>
+<option value="toyama">Toyama</option>
+<option value="ishikawa">Ishikawa</option>
+<option value="fukui">Fukui</option>
+<option value="gifu">Gifu</option>
+<option value="shizuoka">Shizuoka</option>
+<option value="aichi">Aichi</option>
+<option value="mie">Mie</option>
+<option value="shiga">Shiga</option>
+<option value="kyoto">Kyoto</option>
+<option value="osaka">Osaka</option>
+<option value="hyogo">Hyogo</option>
+<option value="nara">Nara</option>
+<option value="wakayama">Wakayama</option>
+<option value="tottori">Tottori</option>
+<option value="shimane">Shimane</option>
+<option value="okayama">Okayama</option>
+<option value="hiroshima">Hiroshima</option>
+<option value="yamaguchi">Yamaguchi</option>
+<option value="tokushima">Tokushima</option>
+<option value="kagawa">Kagawa</option>
+<option value="ehime">Ehime</option>
+<option value="kochi">Kochi</option>
+<option value="fukuoka">Fukuoka</option>
+<option value="saga">Saga</option>
+<option value="nagasaki">Nagasaki</option>
+<option value="kumamoto">Kumamoto</option>
+<option value="oita">Oita</option>
+<option value="miyazaki">Miyazaki</option>
+<option value="kagoshima">Kagoshima</option>
+<option value="okinawa">Okinawa</option>
+</select>
+
+
#################################
# Tests of underlying functions #
#################################
Modified:
django/branches/boulder-oracle-sprint/tests/regressiontests/templates/tests.py
===================================================================
---
django/branches/boulder-oracle-sprint/tests/regressiontests/templates/tests.py
2007-03-28 20:55:46 UTC (rev 4840)
+++
django/branches/boulder-oracle-sprint/tests/regressiontests/templates/tests.py
2007-03-28 21:28:59 UTC (rev 4841)
@@ -650,6 +650,10 @@
'widthratio09': ('{% widthratio a b %}', {'a':50,'b':100},
template.TemplateSyntaxError),
'widthratio10': ('{% widthratio a b 100.0 %}', {'a':50,'b':100},
template.TemplateSyntaxError),
+ ### WITH TAG
########################################################
+ 'with01': ('{% with dict.key as key %}{{ key }}{% endwith %}',
{'dict': {'key':50}}, '50'),
+ 'with02': ('{{ key }}{% with dict.key as key %}{{ key }}-{{
dict.key }}-{{ key }}{% endwith %}{{ key }}', {'dict': {'key':50}},
('50-50-50', 'INVALID50-50-50INVALID')),
+
### NOW TAG
########################################################
# Simple case
'now01' : ('{% now "j n Y"%}', {}, str(datetime.now().day) + ' ' +
str(datetime.now().month) + ' ' + str(datetime.now().year)),
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---