Exemplo n.º 1
0
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
Exemplo n.º 2
0
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