def item(id=None): if request.method == 'GET': if id is not None: item = Item.query.get(id) if item: return jsonify(item.serialize()), 200 else: return jsonify({"msg":"item not found"}), 404 else: item = Item.query.all() item = list(map(lambda item: item.serialize(), item)) return jsonify(item), 200 if request.method == 'POST': nombre = request.json.get('nombre', None) descripcion = request.json.get('descripcion', None) if not nombre: return jsonify({"msg":"name is required"}), 422 if not descripcion: return jsonify({"msg":"description is required"}), 422 item = Item() item.nombre = nombre item.descripcion = descripcion db.session.add(item) db.session.commit() return jsonify(item.serialize()), 201 if request.method == 'PUT': nombre = request.json.get('nombre', None) descripcion = request.json.get('descripcion', None) if not nombre: return jsonify({"msg":"name is required"}), 422 if not descripcion: return jsonify({"msg":"description is required"}), 422 item = Item.query.get(id) if not item: return jsonify({"msg":"item not found"}), 404 item.nombre = nombre item.descripcion = descripcion db.session.commit() return jsonify(item.serialize()), 200 if request.method == 'DELETE': item = Item.query.get(id) if not item: return jsonify({"msg":"item not found"}), 404 db.session.delete(item) db.session.commit() return jsonify({"msg":"item deleted"}), 200
def items(id=None): if request.method == 'GET': if id is not None: item = Item.query.get(id) if item: return jsonify(item.serialize()), 200 else: return jsonify({'item': 'not found'}), 404 else: items = Item.query.all() items = list(map(lambda item: item.serialize(), items)) return jsonify(items), 200 if request.method == 'POST': if not request.json.get('nombre'): return jsonify({"nombre": "is required"}), 422 if not request.json.get('precio'): return jsonify({"precio": "is required"}), 422 if not request.json.get('descripcion'): return jsonify({"descripcion": "is required"}), 422 if not request.json.get('category_id'): return jsonify({"category_id": "is required"}), 422 item = Item() item.nombre = request.json.get('nombre') item.precio = request.json.get('precio') item.descripcion = request.json.get('descripcion') item.category_id = request.json.get('category_id') db.session.add(item) db.session.commit() return jsonify(item.serialize()), 201 if request.method == 'PUT': if not request.json.get('nombre'): return jsonify({"nombre": "is required"}), 422 if not request.json.get('precio'): return jsonify({"precio": "is required"}), 422 if not request.json.get('descripcion'): return jsonify({"descripcion": "is required"}), 422 if not request.json.get('category_id'): return jsonify({"category_id": "is required"}), 422 item = Item.query.get(id) item.nombre = request.json.get('nombre') item.precio = request.json.get('precio') item.descripcion = request.json.get('descripcion') item.category_id = request.json.get('category_id') db.session.commit() return jsonify(item.serialize()), 200 if request.method == 'DELETE': item = Item.query.get(id) db.session.delete(item) db.session.commit() return jsonify({'item': 'deleted'}), 200