Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- #
- from flask import Flask, jsonify, request
- app = Flask(__name__)
- """
- alumnos = [ {'id':1, 'nombre':'Ana', 'cursos':3},
- {'id':2, 'nombre':'Ale', 'cursos':1},
- {'id':3, 'nombre':'Juana', 'cursos':2},
- {'id':4, 'nombre':'Ema', 'cursos':5},
- ]
- """
- alumnos = []
- @app.route("/")
- def home():
- return "<html><h1><em>Hola</em> a todos</h1></html>"
- @app.route("/alumno", methods=["GET","POST","PUT","DELETE"])
- def alumno():
- if request.method == "GET":
- return jsonify({"alumnos":alumnos})
- elif request.method == 'POST':
- if not alumnos:
- codigo = 1
- else:
- codigo = alumnos[-1]['id'] + 1
- alumno = {
- 'id':codigo,
- 'nombre': request.json['nombre'],
- 'cursos': request.json['cursos']
- }
- alumnos.append(alumno)
- return jsonify("Alumno añadido")
- elif request.method == 'PUT':
- codigo = request.json['id']
- for alumno in alumnos:
- if codigo == alumno.get('id'):
- if request.json['nombre'] is not None:
- alumno['nombre'] = request.json['nombre']
- if request.json['cursos'] is not None:
- alumno['cursos'] = request.json['cursos']
- return jsonify("Datos modificados")
- return jsonify(f"No se halló al alumno con id {codigo}")
- elif request.method == "DELETE":
- codigo = request.json['id']
- for alumno in alumnos:
- if codigo == alumno.get('id'):
- alumnos.remove(alumno)
- return jsonify("Alumno eliminado")
- return jsonify(f"No se halló al alumno con id {codigo}")
- @app.route('/alumno/<int:i>')
- def get_alumno(i):
- try:
- return jsonify({"alumno":alumnos[i-1]})
- except IndexError:
- return jsonify(f"No existe el alumno con id {i}")
- @app.route("/instructor")
- def get_instructor():
- return "Sección en construcción"
- @app.route("/admin")
- def get_admin():
- return "<html><h2>Sección en construcción</h2></html>"
- if __name__ == "__main__":
- app.run(debug=True)
- # LINUX
- # export FLASK_APP=webserver.py
- # flask run
- # windows
- # set FLASK_APP=webserver.py
- # python -m flask run
Advertisement
Advertisement
Advertisement
RAW Paste Data
Copied
Advertisement