Advertisement
teslariu

server

May 26th, 2021
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.24 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. from flask import Flask, jsonify, request
  5.  
  6. app = Flask(__name__)
  7.  
  8. """
  9. alumnos = [{'id':1, 'nombre': 'Ale', 'cursos':5},
  10.            {'id':2, 'nombre': 'Ana', 'cursos':3},
  11.            ]
  12. """
  13. alumnos = []
  14.  
  15. @app.route("/")
  16. def home():
  17.     return "HOME"
  18.    
  19. @app.route("/alumno", methods=['GET','POST','PUT','DELETE'])
  20. def alumno():
  21.     if request.method == "GET":
  22.         return jsonify({'alumnos': alumnos})
  23.    
  24.    
  25.     if request.method == "POST":
  26.         if not alumnos:
  27.             codigo = 1
  28.         else:
  29.             codigo = alumnos[-1]['id'] + 1
  30.         alumno = {
  31.             'id': codigo,
  32.             'nombre': request.json['nombre'],
  33.             'cursos': request.json['cursos']
  34.             }
  35.         alumnos.append(alumno)
  36.         return jsonify("Alumno añadido")
  37.        
  38.     elif request.method == "PUT":
  39.         codigo = request.json['id']
  40.         for alumno in alumnos:
  41.             if codigo == alumno.get('id'):
  42.                 if request.json['nombre'] is not None:
  43.                     alumno['nombre'] = request.json['nombre']
  44.                 if request.json['cursos'] is not None:
  45.                     alumno['cursos'] = request.json['cursos']
  46.                 return jsonify("Datos modificados")
  47.         return jsonify(f"id {codigo} no hallado")
  48.  
  49.            
  50.     elif request.method == "DELETE":
  51.         codigo = request.json['id']
  52.         for alumno in alumnos:
  53.             if codigo == alumno.get('id'):
  54.                 alumnos.remove(alumno)
  55.                 return jsonify("Alumno borrado")
  56.         return jsonify(f"id {codigo} no hallado")
  57.        
  58. @app.route('/alumno/<int:i>')
  59. def estudiante(i):
  60.     try:
  61.         return jsonify({'alumno':alumnos[i-1]})
  62.     except IndexError:
  63.         return jsonify(f"id {i} no hallado")
  64.        
  65.  
  66. @app.route("/instructor")
  67. def instructor():
  68.     return "Sección de instructores"
  69.    
  70. @app.route("/administrativos")
  71. def admin():
  72.     return "Sección de administrativos"
  73.    
  74. if __name__ == "__main__":
  75.     app.run(debug = True)        
  76.    
  77.    
  78. # LINUX:  
  79. # export FLASK_APP=webserver.py
  80. # flask run        
  81.        
  82. # WINDOWS
  83. # set FLASK_APP=webserver.py (no dejar espacios)
  84. # python -m flask run
  85.        
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement