def update_category(category_id): """ Update an category. """ category = Category.get(category_id) if not category: return api_error('Category not found', 404) form = CategoryForm( validate_unique_name=category.name != request.json.get('name') ) if not form.validate_on_submit(): return api_error(form.errors) category.name = form.name.data category.description = form.description.data if 'services' in request.json: services = request.json['services'] for data in services: service = Service.get(data['id']) service.sort_order = data['sort_order'] service.save() category.save() return '', 200
def create_category(): """ Create a category. Must be an admin. """ form = CategoryForm() if not form.validate_on_submit(): return api_error(form.errors) name = form.name.data description = form.description.data category = Category(name=name, description=description) category.save() return '', 201
def update_category(category_id): """ Update an category. """ category = Category.get(category_id) if not category: return api_error('Category not found', 404) form = CategoryForm( validate_unique_name=category.name != request.json.get('name')) if not form.validate_on_submit(): return api_error(form.errors) category.name = form.name.data category.description = form.description.data if 'services' in request.json: services = request.json['services'] for data in services: service = Service.get(data['id']) service.sort_order = data['sort_order'] service.save() category.save() return '', 200