#14228: APPEND_SLASH behaviour should be documented better
--------------------------------+-------------------------------------------
 Reporter:  [email protected]  |       Owner:  nobody    
   Status:  new                 |   Milestone:            
Component:  Documentation       |     Version:  1.2       
 Keywords:                      |       Stage:  Unreviewed
Has_patch:  0                   |  
--------------------------------+-------------------------------------------
 Current docs say:

 {{{
 APPEND_SLASH

 Default: True

 Whether to append trailing slashes to URLs. This is only used if
 CommonMiddleware is installed (see Middleware). See also PREPEND_WWW.
 }}}

 This is not the complete story: a slash is appended ''only'' if the URL
 without slash does not match any in the urlconf. This becomes an issue if
 the urlconf has patterns that are subsets of other patterns, like this:

 {{{
 #!python
 urlpatterns = patterns('',
     (r'^blog/', 'blog.views.index'),
     (r'^(?P<pagename>\w+)/', 'pages.views.page'),
 }}}

 Even though `pages.views.page` does not know a page named `blog`, and
 would thus return a 404, `APPEND_SLASHES` will recognize `/blog` as a
 valid URL and not append the slash. I realize that this cannot be solved
 without actually running the view (which we don't want to do), but this
 behaviour should be documented.

 A note about the fact that a HTTP redirect happens (and thus a round trip
 to the client) would also be nice.

 Suggested wording:

 {{{
 APPEND_SLASH

 Default: True

 Whether to append trailing slashes to URLs. If an URL does not match
 any of the patterns in the URLconf, and it doesn't end in a slash, a
 HTTP redirect is issued to the same URL with the slash appended.
 (Note that data in a POST request will be lost, which might not be
 what you want.) The APPEND_SLASH setting is only used if
 CommonMiddleware is installed (see Middleware). See also PREPEND_WWW.
 }}}

-- 
Ticket URL: <http://code.djangoproject.com/ticket/14228>
Django <http://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
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.

Reply via email to