Author: mtredinnick
Date: 2008-12-09 01:33:08 -0600 (Tue, 09 Dec 2008)
New Revision: 9626

Modified:
   django/trunk/docs/ref/generic-views.txt
Log:
Documented how to handle '%' characters in redirect_to() URL strings (even in
the absence of keyword arguments). Fixed #9773.


Modified: django/trunk/docs/ref/generic-views.txt
===================================================================
--- django/trunk/docs/ref/generic-views.txt     2008-12-09 07:32:28 UTC (rev 
9625)
+++ django/trunk/docs/ref/generic-views.txt     2008-12-09 07:33:08 UTC (rev 
9626)
@@ -120,7 +120,10 @@
 Redirects to a given URL.
 
 The given URL may contain dictionary-style string formatting, which will be
-interpolated against the parameters captured in the URL.
+interpolated against the parameters captured in the URL. Because keyword
+interpolation is *always* done (even if no arguments are passed in), any 
``"%"``
+characters in the URL must be written as ``"%%"`` so that Python will convert
+them to a single percent sign on output.
 
 If the given URL is ``None``, Django will return an ``HttpResponseGone`` (410).
 
@@ -161,6 +164,14 @@
         ('^bar/$', 'redirect_to', {'url': None}),
     )
 
+This example shows how ``"%"`` characters must be written in the URL in order
+to avoid confusion with Python's string formatting markers. If the redirect
+string is written as ``"%7Ejacob/"`` (with only a single ``%``), an exception 
would be raised::
+
+    urlpatterns = patterns('django.views.generic.simple',
+        ('^bar/$', 'redirect_to', {'url': '%%7Ejacob.'}),
+    )
+
 Date-based generic views
 ========================
 


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-updates@googlegroups.com
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to