Advertisement
teslariu

Untitled

Nov 28th, 2020
77
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.08 KB | None
  1. #/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. from flask import Flask, jsonify, request
  5.  
  6. app = Flask(__name__)
  7. """
  8. alumnos = [{'id':1, 'nombre':"Luisa", 'cursos':5},
  9.            {'id':2, 'nombre':"Alex", 'cursos':2}
  10. ]
  11.  
  12. """
  13. alumnos = []
  14.  
  15. @app.route('/')
  16. def home():
  17.     return "HOME"
  18.    
  19. @app.route('/alumno',methods = ['POST','DELETE','PUT','GET'])
  20. def alumno():
  21.    
  22.     if request.method  == 'GET':
  23.         return jsonify({'alumnos':alumnos})
  24.        
  25.     elif 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.         id_alumno = request.json['id']
  40.         for alumno in alumnos:
  41.             if id_alumno == 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("ID del alumno no encontrado")
  48.        
  49.    
  50.     elif request.method == "DELETE":
  51.         id_alumno = request.json['id']
  52.         for alumno in alumnos:
  53.             if id_alumno == alumno.get('id'):
  54.                 alumnos.remove(alumno)
  55.                 return jsonify("Alumno borrado")
  56.         return jsonify("ID del alumno no encontrado")
  57.        
  58. @app.route('/alumno/<int:i>')
  59. def student(i):
  60.     try:
  61.         return jsonify({'alumno':alumnos[i-1]})
  62.     except IndexError:
  63.         return jsonify("ID del alumno no encontrado")
  64.        
  65. @app.route('/instructor')
  66. def instructor():
  67.     return "Seccion de instructores"
  68.    
  69. @app.route('/administrativo')
  70. def administrativo():
  71.     return "Seccion de administrativos"
  72.    
  73. if __name__ == '__main__':
  74.     app.run(debug = True)
  75.    
Advertisement
RAW Paste Data Copied
Advertisement