Error en la petición. 400: Petición mal formada. 401: Problema en autenticacións. 403: Petición rechazada. 404: Recurso no encontrado. 5XX: Error en servidor (500). Cabeceras, versión, etc.
in ["dog", "cat", "mouse"]: print "{0} is a mammal".format(animal) Lenguaje interpretado. No usa llaves: Identación. Muy muy legible. No hace falta saberlo para la práctica. https://learnxinyminutes.com/docs/python/
Creamos el cliente client = MongoClient("0.0.0.0", 27017) # Obtenemos una base de datos db = client.shop # Obtenemos una colección collection = db.catalog
cursor = collection.find({}) for doc in cursor: print doc['description'] # Esto es lo mismo for doc in collection.find({}): print doc['description'] # Dot Notation for doc in collection.find({'field1.field2': 'whatever'}): print doc['field1']['field2'] # Filtrando por datos de un array for doc in collection.find({'some_array': 'value'}): print doc['some_array']
... # Ignorando los dos primeros elementos for doc in col.find({}).skip(2): ... # Devolviendo sólo 5 resultados for doc in col.find({}).limit(5): ... # ¡Todo junto! for doc in col.find({}).skip(2).limit(5).sort('field'): ...
col.update_one({"item_number": 5}, {"$inc": {"stock": 20}}) # Incrementando el valor de varios documentos col.update_many({"item_number": 5}, {"$inc": {"stock": 20}}) # Cambiando el valor de un campo col.update_one({"item_number": 5}, {"$set": {"stock": 0}}) # Añadiendo un valor a un array col.update_one({"item_number": 5}, {"$push": {"tag": "sweet"}}) # Borrando un valor de un array col.update_many({}, {"$pull": {"tag": "sweet"}}) # Reemplazando un documento (también hay replace_many) col.replace_one({"stock": 13}, {"stock": 0, "tags": ["cool"]})
catálogo. [GET] /catalog?type=<type_name> Obtiene todos los productos del catálogo de un tipo. [GET] /catalog/<objectid> Obtiene un producto. [PUT] /catalog Añade un producto. [POST] /catalog/<objectid> Edita (reemplaza) los datos de un producto. [DELETE] /catalog/<objectid> Borra un producto.
carros. [GET] /cart/<objectid> Obtiene un carro. [PUT] /cart Añade un carro. [POST] /cart/<objectid> Edita (reemplaza) los datos de un carro. [DELETE] /catalog/<objectid> Borra un carro.
al carros. [DELETE] /cart/<objectid> Borra un producto de un carros. BOLA EXTRA [GET] /platform/ Devuelve las consolas disponibles y el número de juegos disponibles.
carro hay que actualizar el stock. Al borrar un producto de un carro hay que actualizar el stock. Al borrar/actualizar un producto hay que borrarlo de los carros. Al añadir/editar algo hay que devolver el objeto añadido/modificado. El código debe ser lo más atómico posible. ¡Usad índices!