{"action":"opened","issue":{"url":"https://api.github.com/repos/Javex/pyramid_crud/issues/30","labels_url":"https://api.github.com/repos/Javex/pyramid_crud/issues/30/labels{/name}","comments_url":"https://api.github.com/repos/Javex/pyramid_crud/issues/30/comments","events_url":"https://api.github.com/repos/Javex/pyramid_crud/issues/30/events","html_url":"https://github.com/Javex/pyramid_crud/issues/30","id":58279910,"number":30,"title":"Support Traversal","user":{"login":"Javex","id":641439,"avatar_url":"https://avatars.githubusercontent.com/u/641439?v=3","gravatar_id":"","url":"https://api.github.com/users/Javex","html_url":"https://github.com/Javex","followers_url":"https://api.github.com/users/Javex/followers","following_url":"https://api.github.com/users/Javex/following{/other_user}","gists_url":"https://api.github.com/users/Javex/gists{/gist_id}","starred_url":"https://api.github.com/users/Javex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Javex/subscriptions","organizations_url":"https://api.github.com/users/Javex/orgs","repos_url":"https://api.github.com/users/Javex/repos","events_url":"https://api.github.com/users/Javex/events{/privacy}","received_events_url":"https://api.github.com/users/Javex/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-02-19T22:22:32Z","updated_at":"2015-02-19T22:22:32Z","closed_at":null,"body":"Currently we only do URL dispatch. However, Traversal is also a viable alternative. Also this allows for a much more flexible approach as the user can do all configuration if they want to, easily inside resources.\r\n\r\nImplementation Idea: We expose a resource function/property/attribute that yields a resource for that admin view. The user can then, in any resource, e.g. an \"admin\" resource define each view with a specific route and our part only concentrates on subroutes.\r\n\r\nExample:\r\n\r\n    # in any resource\r\n    def __getitem__(self, key):\r\n        if key == 'myview':\r\n            target = MyView.resource(request)\r\n            target.__name__ = key\r\n            target.__parent__ = self\r\n            return target\r\n"}}