On 09 November 2000, Andrew Kuchling said: > No, that wouldn't work. The problem is that /process/review/300 and > .../300/ take you to the same object and produce the same output, but > that breaks relative URLs, since a url like HREF="summary" would go to > process/review/summary and .../review/300/summary in the two cases. > You could write some code to figure out the correct full URL, but it > seems to me it's easier to just always ensure that the trailing / is > there. +1 from me for exactly this reason: relative URLs in the 'index()' of a method returned by '__getname__()'. > If the traversal is something like /review/300/sequence, then no > trailing slash is needed, and none is added by this patch, since the > final object is a method, not a module or an instance. This suggests a very simple rule: after the main traversal loop, do this: if not iscallable(object) and url[-1] != "/": return response.redirect(url + "/") Or am I missing something? BTW, I'm also +1 on the access/__getname__ fix. My bad. Oops. Greg