Pylons/pyramid — Issue #382: @@ view names don't work with *traverse
Author: samuelrayment
Created: 2011-12-26 11:04:55+00:00
State: open

When using *traverse, attempting to use @@ to designate a view name results in %40%40 being looked up as a key of the parent resource instead.

In the ResourceTreeTraverser in traversal.py all path segments from a *traverse route match are passed to quote_path_segments. This will turn @@ into '%40%40, which won't match VIEW_SELECTOR. This used to be ok as the path was passed to traversal_path, which unquoted the path again; however now traversal_path_info is used and the path is not unquoted.