March 2020
Intermediate to advanced
608 pages
17h 17m
English
We can use the humanize_url filter in any template, as follows:
{% load utility_tags %}<a href="{{ object.website }}" target="_blank"> {{ object.website|humanize_url }}</a><a href="{{ object.website }}" target="_blank"> {{ object.website|humanize_url:30 }}</a>
The filter uses regular expressions to remove the leading protocol and trailing slash, shortens the URL to the given amount of letters (40, by default), and adds an ellipsis to the end after truncating it if the full URL doesn't fit the specified letter count. For example, for the https://docs.djangoproject.com/en/3.0/howto/custom-template-tags/ URL, the 40-character humanized version would be docs.djangoproject.com/en/3.0/howto/cus….