def add_tag(self, label): tags = Tag() t = tags.find_one(label=label) if not t: t = tags.insert(label=label) if not any(d['label'] == label for d in self.tags): t.count += 1 t.save() t._obj.pop('count') self.tags.append(t._obj) self.save() return True return False