-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbackend.py
86 lines (69 loc) · 2.17 KB
/
backend.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# Importamos las librerias
from flask import Flask, jsonify
import pymongo
# Definimos un servidor flask
app = Flask(__name__)
@app.route('/') # Definimos las routes
def __init__():
return "<h1>PRUEBAS PALABRAS</h1>"
def conectarMongo():
# Levantamos la conexion a mongo
host = pymongo.MongoClient("mongodb://localhost:27017/") # Host
db = host["bdpalabras"] # BD
coleccion = db["palabras"] # Coleccion
return coleccion
@app.route('/insertar')
def insertarPalabras():
# Insertamos palabras en la coleccion
palabras = [
{"palabra": "lata"},
{"palabra": "dado"},
{"palabra": "cafetera"},
{"palabra": "moto"}
]
conectarMongo().insert_many(palabras)
return "PALABRAS INSERTADAS"
@app.route('/palabras')
def obtenerPalabras():
# Devuelve todos los documentos
palabras = []
resultado = conectarMongo().find()
for palabra in resultado:
palabra.pop('_id')
palabras.append(palabra)
return jsonify(palabras)
@app.route('/palabra/<palabra>')
def buscarPalabra(palabra):
# Buscar una palabra
busqueda = {"palabra": palabra}
palabras = []
resultado = conectarMongo().find(busqueda)
for palabra in resultado:
palabra.pop('_id')
palabras.append(palabra)
return jsonify(palabras)
@app.route('/buscar/<busqueda>')
def buscarPalabras(busqueda):
# Buscar palabras con comodines
palabras = []
busqueda = {"palabra": {"$gt": busqueda}}
resultado = conectarMongo().find(busqueda)
for palabra in resultado:
palabra.pop('_id')
palabras.append(palabra)
return jsonify(palabras)
@app.route('/ordenar/<busqueda>')
def buscarPalabrasOrdenadas(busqueda):
# Buscando palabras con comodines y ordenando
palabras = []
busqueda = {"palabra": {"$gt": busqueda}}
resultado = conectarMongo().find(busqueda)
resultado = resultado.sort("palabra", 1) # ascendente
resultado = resultado.sort("palabra", -1) # descendente
for palabra in resultado:
palabra.pop('_id')
palabras.append(palabra)
return jsonify(palabras)
# Levantamos el servidor flask
if __name__ == "__main__":
app.run(debug=True)