Login

Remove scheme, host and port from url

Author:
twinsant
Posted:
March 8, 2007
Language:
Python
Version:
Pre .96
Tags:
referer get_full_path
Score:
2 (after 2 ratings)

See doc for more information.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
import urlparse
from django import template

register = template.Library()

@register.filter
def get_full_path(value):
    """Remove scheme://host:port from url, return the left request part.

    In some situations, we have to remove scheme://host:port part from
    url, e.g. when we do the redirect operation, we often get the referer
    from request.META.HTTP_REFERER, this is a full url like:
    http://www.site.com:8000/some/page
    while we just need `/some/page` but not full url, this little snippet
    will do this work. it remove `http://www.site.com:8000` in above
    example.
    """
    url = urlparse.urlsplit(value)
    return urlparse.urlunsplit((0, 0, url[2], url[3], url[4]))

More like this

  1. LanguageField by marinho 7 years, 4 months ago
  2. Admin list thumbnail by theetderks 7 years, 11 months ago
  3. Frequently used tags/filters for Jinja2 by mathwizard 6 years, 7 months ago
  4. Add example contact with BaseCommand by magik_cypress 2 years, 8 months ago
  5. Add example content with BaseCommand by magik_cypress 2 years, 8 months ago

Comments

Please login first before commenting.