Changeset 5461
- Timestamp:
- 06/11/07 09:30:53 (1 year ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/unicode/django/http/__init__.py
r5374 r5461 2 2 from Cookie import SimpleCookie 3 3 from pprint import pformat 4 from urllib import urlencode , quote4 from urllib import urlencode 5 5 from django.utils.datastructures import MultiValueDict 6 from django.utils.encoding import smart_str 6 from django.utils.encoding import smart_str, iri_to_uri 7 7 8 8 RESERVED_CHARS="!*'();:@&=+$,/?%#[]" … … 335 335 def __init__(self, redirect_to): 336 336 HttpResponse.__init__(self) 337 self['Location'] = quote(redirect_to, safe=RESERVED_CHARS)337 self['Location'] = iri_to_uri(redirect_to) 338 338 339 339 class HttpResponsePermanentRedirect(HttpResponse): … … 342 342 def __init__(self, redirect_to): 343 343 HttpResponse.__init__(self) 344 self['Location'] = quote(redirect_to, safe=RESERVED_CHARS)344 self['Location'] = iri_to_uri(redirect_to) 345 345 346 346 class HttpResponseNotModified(HttpResponse): django/branches/unicode/django/template/defaultfilters.py
r5314 r5461 176 176 def urlencode(value): 177 177 "Escapes a value for use in a URL" 178 import urllib179 return force_unicode(urllib.quote(value))178 from django.utils.http import urlquote 179 return urlquote(value) 180 180 urlencode = stringfilter(urlencode) 181 181 django/branches/unicode/tests/regressiontests/defaultfilters/tests.py
r5317 r5461 112 112 113 113 114 >>> urlencode(u' jack& jill')115 u' jack%20%26%20jill'114 >>> urlencode(u'fran\xe7ois & jill') 115 u'fran%C3%A7ois%20%26%20jill' 116 116 >>> urlencode(1) 117 117 u'1' 118 118 >>> iriencode(u'S\xf8r-Tr\xf8ndelag') 119 119 u'S%C3%B8r-Tr%C3%B8ndelag' 120 >>> iriencode(urlencode(u' jack& jill'))121 u' jack%20%26%20jill'120 >>> iriencode(urlencode(u'fran\xe7ois & jill')) 121 u'fran%C3%A7ois%20%26%20jill' 122 122 123 123 >>> urlizetrunc(u'http://short.com/', 20)
