Advertisement
teslariu

servidor

Apr 17th, 2021
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.44 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. alumnos = [
  9.            {'id':1, 'nombre':'Alejandro', 'cursos':5},
  10.            {'id':2, 'nombre':'Luisa', 'cursos':2},
  11.            {'id':3, 'nombre':'Ana', 'cursos':4},
  12.        ]
  13. """
  14.  
  15. alumnos = []
  16.  
  17. @app.route('/')
  18. def home():
  19.     return "HOME"
  20.    
  21. @app.route('/alumno', methods = ['GET', 'POST', 'PUT', 'DELETE'])
  22. def alumno():
  23.    
  24.     if request.method == "GET":
  25.         return jsonify({'alumnos': alumnos})
  26.        
  27.     elif request.method == "POST":
  28.         if not alumnos:
  29.             codigo = 1
  30.         else:
  31.             codigo = alumnos[-1]['id'] + 1
  32.         alumno = {
  33.                 'id': codigo,
  34.                 'nombre': request.json['nombre'],
  35.                 'cursos': request.json['cursos']
  36.                 }
  37.         alumnos.append(alumno)
  38.         return jsonify("Alumno añadido")
  39.        
  40.     elif request.method == "PUT":
  41.         codigo = request.json['id']
  42.         for alumno in alumnos:
  43.             if codigo == alumno.get('id'):
  44.                 if request.json['nombre'] is not None:
  45.                     alumno['nombre'] = request.json['nombre']
  46.                 if request.json['cursos'] is not None:
  47.                     alumno['cursos'] = request.json['cursos']
  48.                 return jsonify("Datos modificados")
  49.         return jsonify("ID del alumno no hallado")
  50.        
  51.     elif request.method == "DELETE":
  52.         codigo = request.json['id']
  53.         for alumno in alumnos:
  54.             if codigo == alumno.get('id'):
  55.                 alumnos.remove(alumno)
  56.                 return jsonify("Alumno borrado")
  57.         return jsonify("ID del alumno no hallado")
  58.        
  59. @app.route('/alumno/<int:i>')
  60. def estudiante(i):
  61.     try:
  62.         return jsonify({'alumno':alumnos[i-1]})
  63.     except IndexError:
  64.         return jsonify("No existe el alumno")
  65.        
  66. @app.route('/instructor')
  67. def instructor():
  68.     return "Sección de instructores. En construcción..."
  69.            
  70. @app.route('/administrativo')
  71. def administrativo():
  72.     return "Sección de administrativos. En construcción..."
  73.    
  74. if __name__ == '__main__':
  75.     app.run(debug = True)
  76.    
  77.    
  78. ####### LINUX  ##############
  79. # export FLASK_APP = server.py
  80. # flask run
  81.  
  82.  
  83. ######  WINDOWS ##########
  84. # C:\<dir de server.py> set FLASK_APP=server.py
  85. # python -m flask run
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.            
  93.            
  94.            
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement