Skip to content

Instantly share code, notes, and snippets.

@silenius
Created December 1, 2016 15:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save silenius/c9b44714312bcc333658fd22f3524c59 to your computer and use it in GitHub Desktop.
Save silenius/c9b44714312bcc333658fd22f3524c59 to your computer and use it in GitHub Desktop.
class Root(Resource):
__name__ = ''
__parent__ = None
def __init__(self, request):
self.request = request
def __getitem__(self, path):
# /123
if path.isdigit():
entity = self.request.dbsession.query(Content).get(path)
if not entity:
raise KeyError
elif isinstance(entity, Folder):
return FolderResource(entity, self.request)
elif isinstance(entity, Document):
return DocumentResource(entity, self.request)
elif isinstance(entity, Event):
return EventResource(entity, self.request)
else:
raise KeyError
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment