Esempio n. 1
0
def categoria(categoria_id = None):
    if request.method == 'GET':
        if categoria_id is not None:
            categoria = Categoria.query.get(categoria_id)
            if categoria:
                return jsonify(categoria.serialize()), 200
            else:
                return jsonify({"msg": " Categoria no encontrada"}), 404
        else:
            categorias = Categoria.query.all()
            categorias = list(map(lambda categoria: categoria.serialize(), categorias))
            return jsonify(categorias), 200

    if request.method == 'POST':
        categoria = request.json.get('categoria', None)
        
        categorias = Categoria()
        
        categorias.categoria = categoria
        
        db.session.add(categorias) 
        db.session.commit()  

        return jsonify(categorias.serialize()), 201
    
    if request.method == 'PUT':
        categoria = request.json.get('categoria', None)

        categorias = Categoria.query.get(categoria_id)
        if not categorias:
            return jsonify({"msg": "Categoria no encontrada"}), 404
         
        categorias.categoria = categoria
        
        db.session.commit()  

        return jsonify(categorias.serialize()), 201

    if request.method == 'DELETE':
        categoria = Categoria.query.get(categoria_id)
        if not categoria:
            return jsonify({"msg": "Categoria no encontrada"}), 404
        db.session.delete(categoria)
        db.session.commit()
        return jsonify({"msg":"Categoria borrada!"}), 200
Esempio n. 2
0
def categorias(id=None):
    if request.method == 'GET':
        if id is not None:
            categoria = Categoria.query.get(id)
            if categoria:
                return jsonify(categoria.serialize()), 200
            else:
                return jsonify({"error": "Not found"}), 404
        else:
            categorias = Categoria.query.all()
            categorias = list(
                map(lambda categoria: categoria.serialize(), categorias))
            return jsonify(categorias), 200

    if request.method == 'POST':

        if not request.json.get('nombre'):
            return jsonify({"nombre": "es requerido"}), 422

        data = request.get_json()
        categoria = Categoria.query.filter_by(
            name=data['nombre'].upper()).first()
        print(categoria)
        if categoria:
            return jsonify(
                {"categoria": data['nombre'].upper() + " ya existe"}), 200
        else:
            categoria = Categoria()
            categoria.name = data['nombre'].upper()
            db.session.add(categoria)
            db.session.commit()

        return jsonify(categoria.serialize()), 201

    if request.method == 'PUT':

        data = request.get_json()
        if not request.json.get('descripcion'):
            return jsonify({"descripcion": "es requerido"}), 422

        categoria = Categoria.query.get(id)

        if not categoria:
            return jsonify({"error": "not found"}), 404
        else:
            categoria = Categoria.query.filter_by(
                descripcion=data['descripcion'].upper()).first()
            if categoria:
                return jsonify(
                    {"categoria":
                     data['descripcion'].upper() + " ya existe"}), 200
            else:
                categoria = Categoria.query.get(id)
                categoria.descripcion = data['descripcion'].upper()
                db.session.commit()

                return jsonify(categoria.serialize()), 201

    if request.method == 'DELETE':

        categoria = Categoria.query.get(id)
        if not categoria:
            return jsonify({"error": "not found"}), 404
        else:
            db.session.delete(pais)
            db.session.commit()
            return jsonify({"message": "delete"}), 200