def delete_user(sender, instance, using, **kwargs): #Eliminamos sus comentarios print "On eliminar" Comentario.objects.filter(author=instance.id).delete() #Eliminamos sus votos print "Antes" Vote.objects.filter(user=instance.id).delete() print "DEspues" recommender = EstablecimientosRecommender() recommender.precompute()
def obtener_recomendacion(self, user): print "Prediciendo recomendacion" recomendador_instance = EstablecimientosRecommender() recomendaciones = recomendador_instance.storage.get_recommendations_for_user( user) print recomendaciones if recomendaciones: print "Recomendando" result = [] for recomendacion in recomendaciones: result.append(recomendacion.object) recomendaciones = result recomendaciones_leng = len(recomendaciones) if recomendaciones_leng < 10: query = Establecimiento.objects.all().order_by('-rating_score') for establecimiento in query: if establecimiento not in recomendaciones: if not Vote.objects.filter( object_id=establecimiento.id, user=user.id): recomendaciones.append(establecimiento) if len(recomendaciones) >= 10: break else: query = Establecimiento.objects.all().order_by('-rating_score') for establecimiento in query: if establecimiento not in recomendaciones: if not Vote.objects.filter(object_id=establecimiento.id, user=user.id): recomendaciones.append(establecimiento) if len(recomendaciones) >= 10: print "Se completo la lista de 10 recomendaciones" break print "No se encontraron recomendaciones" return recomendaciones