class SiteCSSResource(BaseResource): dbmodel = SiteCSS def __init__(self, request): super(SiteCSSResource, self).__init__(request) self.mgr = SiteContentManager(self.db) def collection_get(self): q = self.mgr.css_query() return dict(data=[o.serialize() for o in q]) def collection_post(self): name = self.request.json['name'] content = self.request.json['content'] t = self.mgr.add_css(name, content) data = t.serialize() data['result'] = 'success' return data def put(self): content = self.request.json['content'] id = int(self.request.matchdict['id']) t = self.mgr.update_css(id, content) data = dict(obj=t.serialize(), result='success') return data def delete(self): id = int(self.request.matchdict['id']) db = self.request.db with transaction.manager: t = self.mgr.css_query().get(id) if t is not None: db.delete(t) return dict(result='success')