def delete(self, tag_id): if tag_id: try: tag = Tag.get(tag_id) except SQLObjectNotFound: return self.send_404() else: if g.user.admin or tag.author == g.user: if tag.entries: [e.removeTag(tag) for e in tag.entries] tag.delete(tag_id) return self.send_200(tag.dict()) else: return self.send_401() else: return self.send_400()
def get(self, tag_id, tag_name=None): if tag_id: try: tag = Tag.get(tag_id) except SQLObjectNotFound: return self.send_404() else: return self.send_200(tag.dict()) elif tag_name: try: tag = Tag.select(Tag.q.name==name)[0] except (SQLObjectNotFound, IndexError): return self.send_404() else: return self.send_200(tag.dict()) else: return self.send_200([t.dict for t in Tag.select()])
def put(self, tag_id): if tag_id: try: tag = Tag.get(tag_id) except SQLObjectNotFound: return self.send_404() else: if g.user.admin or tag.author == g.user: if request.json: try: tag.name = self.clean_html(request.json['name']) except KeyError: return self.send_400() else: return self.send_200(tag.dict()) else: return self.send_400() else: return self.send_400()