Foros del Web » Programando para Internet » Node.js »

Obtener aplicaciones del usuario

Estas en el tema de Obtener aplicaciones del usuario en el foro de Node.js en Foros del Web. Hola, estoy tratando de obtener las aplicaciones que tiene un usuario pero no encuentro la forma adecuada. Tengo 2 tablas, en una almaceno las aplicaciones ...
  #1 (permalink)  
Antiguo 06/01/2014, 10:31
 
Fecha de Ingreso: enero-2009
Ubicación: España
Mensajes: 786
Antigüedad: 15 años, 9 meses
Puntos: 9
Obtener aplicaciones del usuario

Hola, estoy tratando de obtener las aplicaciones que tiene un usuario pero no encuentro la forma adecuada.

Tengo 2 tablas, en una almaceno las aplicaciones que tiene el usuario, en otra almaceno la información de cada aplicación (Que icono tiene, si está habilitada, etc)

user_apps
ID | APPID | NOMBRE

applications
ID | NOMBRE | ICONO | OTRA INFO..

El único modo que he pensado es, seleccionar las aplicaciones del usuario y con un for, por cada aplicación hacer una consulta y obtener la información de esa aplicación, después enviarla en un socket.

El problema de hacerlo así, es que si tiene 40 aplicaciones hará un bucle con 40 consultas..

Código Javascript:
Ver original
  1. socket.on(3, function(account) {
  2.     client.query('SELECT * FROM accounts_applications WHERE desktop = "1" AND account = "' + [account] + '"', function(errors, user_apps) {
  3.         for(var i = 0; i < user_apps.length; i++) {
  4.             //HACER LA CONSULTA
  5.                 //ENVIAR EL SOCKET CON LOS DATOS
  6.         }
  7.     });
  8. });

¿No es lo adecuado verdad? ¿Alguna posible idea?
  #2 (permalink)  
Antiguo 06/01/2014, 18:13
Avatar de utan  
Fecha de Ingreso: agosto-2012
Mensajes: 126
Antigüedad: 12 años, 3 meses
Puntos: 17
Respuesta: Obtener aplicaciones del usuario

Hola,

Si no quieres mandar un broadcast por cada itereacion del loop, porque no guardas en un objeto or Array y lo mandas cuando sea completado...

ejemplo:

Código Javascript:
Ver original
  1. var app_res = [];
  2.   for(var i = 0; i < user_apps.length; i++) {
  3.            //HACER LA CONSULTA
  4.            //ENVIAR EL SOCKET CON LOS DATOS
  5.          app_res.push(user_apps[i]);
  6.      }
  7. socket.broadcast.json.emit('to users' , app_res );

Esto optimizaría el código si lo usaras así, sin embargo Node.js es sumamente optimizado y no tendría ningún problema en mandar tu información de la manera que lo planteaste ..
pero tendrías razón yo me iría mejor por lo optimizado..
__________________
Mis conocimientos son limitado, pero si te puedo ayudar lo are gustoso mi chat particular, visitalo gracias http://rendezvouschat.com

Última edición por utan; 07/01/2014 a las 00:02

Etiquetas: aplicaciones, usuario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:45.