Open waywardmonkeys opened 10 years ago
So do you think this behavior would be worth having? I guess I removed it at some point when I rewrote the routing code. I think it would be trivial for users to do themselves with a small helper function so I'm inclined to just remove the doc and close this bug.
I think it should be better than it is now... I will look at what Flask or ithers do.
None of this section from the docs is actually implemented ...
There seems to be fairly broad agreement that having distinct meanings for
/foo
and/foo/
is a Bad Thing, which makes sense since it would be difficult for a user to predict the difference. However, it is often useful to ensure that they both map to the same resource rather than having one work and the other get a 404 error.add-resource accepts a
slash:
keyword argument. When true (the default),add-resource
will automatically map the child resource to both the given URL prefix and to the same URL with a trailing slash added. That is,will map child to both
foo/bar
andfoo/bar/
. To change this behavior pass theslash:
keyword argument:slash: #"canonical"
Make the trailing slash URL prefix canonical (by redirecting the one without the trailing slash). Think "slash is canonical".slash: #"copy"
Map the given resource to both the given URL and the URL with the trailing slash. Think "slash is a copy".slash: #"redirect"
(the default) Redirect the trailing slash version of the URL to the one with no trailing slash. Think "slash is redirected".slash: #f
Don't map the trailing slash URL prefix to any resource. Use this carefully since it can cause confusing results for users.