def find_likes_not_ending(): # http://localhost:8080/find_likes_not_ending?ending=s datos = control_parameters(request, ['ending']) expresion = re.compile(re.escape(datos['ending'][0]) + '$', re.IGNORECASE) busqueda = {'likes': expresion} resultado = list(mDao.readMongo(busqueda)) return resultado
def email_birthdate(): # http://localhost:8080/find_email_birthdate?from=1973-01-01&to=1990-12-31 datos = control_parameters(request, ['from', 'to']) busqueda = dict() busqueda['$gte'] = datos['from'][0] busqueda['$lte'] = datos['to'][0] proyectar = {'_id': 1, 'email': 1, 'birthdate': 1} resultado = list(mDao.readMongo({'birthdate': busqueda}, proyectar)) return resultado
def find_leap_year(): # http://localhost:8080/find_leap_year?exp=20 datos = control_parameters(request, ['exp']) busqueda = { 'likes': { '$all': re.compile(datos['ending'][0], re.IGNORECASE) } } resultado = list(mDao.readMongo(busqueda)) return resultado
def find_birth_month(): # http://localhost:8080/find_birth_month?month=abril datos = control_parameters(request, ['month']) busqueda = { "$where": "this.birthdate.split('-')[1] == " + str(meses[datos['month'][0]]) } orden = [('birthdate', ASCENDING)] resultado = list(mDao.readMongo(busqueda, None, None, orden)) return resultado
def find_users(): # http://localhost:8080/find_users?name=Luz # http://localhost:8080/find_users?name=Luz&surname=Romero # http://localhost:8080/find_users?name=Luz&surname=Romero&birthdate=2006-08-14 datos = control_parameters(request, ['name', 'surname', 'birthdate']) busqueda = dict() for clave, valor in datos.items(): busqueda[clave] = valor[0] recuperado = list(mDao.readMongo(busqueda)) print(recuperado) return template('plantillas/mostrarUsuario.tpl', datos=recuperado)
def find_country_likes_limit_sorted(): # http://localhost:8080/find_country_likes_limit_sorted?country=Irlanda&likes=movies,animals&limit=4&ord=asc datos = control_parameters(request, ['country', 'likes', 'limit', 'ord']) busqueda = dict() busqueda['address.country'] = datos['country'][0] busqueda['likes'] = ({'$all': datos['likes'][0].split(',')}) if datos['ord'][0] == 'asc': orden = [('birthdate', ASCENDING)] else: orden = [('birthdate', DESCENDING)] limite = int(datos['limit'][0]) resultado = list(mDao.readMongo(busqueda, None, limite, orden)) return resultado