def render_POST(self, request): """currently only meaningful to create children of CollectionResources""" block = self._block if not IWritableCollection.providedBy(block): raise Exception('Block is not a writable collection') assert request.getHeader('Content-Type') == 'application/json' reqjson = json.load(request.content) key = block.create_child(reqjson) # note may fail url = request.prePathURL() + '/receivers/' + urllib.quote(key, safe='') request.setResponseCode(201) # Created request.setHeader('Location', url) # TODO consider a more useful response return serialize(url).encode('utf-8')
def deleter(): if not IWritableCollection.providedBy(self._block): raise Exception('Block is not a writable collection') self._block.delete_child(name)