How To Have A URL Like This In Django?
Solution 1:
If you want to keep your URLs pretty, for example when a user enters "my category" you could have "my-category" instead of "my%20category" in the URL. I suggest you look into SlugField (http://docs.djangoproject.com/en/dev/ref/models/fields/#slugfield) and prepopulating that slugfield using ModelAdmin's prepopulated_fields attribute.
Solution 2:
http://example.com/my%20home/
is a valid URL where space character is escaped and Django will do all escaping/unescaping for you.
Solution 3:
You can use the slugify template tag within your views to deal with spaces and such like so:
from django.template.defaultfilters import slugify
slugify("This is a slug!") # Will return u'this-is-a-slug'
Solution 4:
You can try an improved version of SlugField called AutoSlugField which is part of Django Custom Management Command Extensions.
Solution 5:
You could consider adding a URL-friendly name to your category and using that in the URL instead.
As another example you could have example.com/tv/
and have the category called "Televisions."
Post a Comment for "How To Have A URL Like This In Django?"