sql >> Base de Datos >  >> NoSQL >> MongoDB

Cómo mostrar datos arbitrarios sin esquema en HTML con node.js/mongodb

La idea básica es lo que describió el vicepresidente de @Gates. Uso underscore.js para iterar a través de las matrices/objetos.

function formatLog(obj){
  var log = "";
  _.each(obj, function(val, key){ 
    if(typeof(val) === "object" || typeof(val) === "array"){
      // if we have a new list
      log += "<ul>";
      log += formatLog(val);
      log += "</ul>";
    }
    else{
      // if we are at an endpoint
      log += "<li>";
      log += (key + ": " + val);
      log += "</li>";
    }
  });
  return log;
}

Si llama a formatLog() en los datos de ejemplo que le diste devuelve

  • ServidorAlias:GBIZ-WEB
    • token de URL:CFID=10989&CFTOKEN=f07fe950-53926E3B-F33A-093D-3FCEFB&jsessionid=84303d29a229d1
        • ID de sesión:84197a667053f63433672873j377e7d379101
      • UUID:53934LBB-DB8F-79T6-C03937JD84HB864A338
      • Plantilla:/home/vagrant/dev/websites/g-bis/code/webroot/page/home/home.cfm, línea 3
        • Contenido generado:
        • Enviar a:
          • Mensaje:Etiqueta desconocida:cfincflude.
          • Nombre de la etiqueta:cfincflude
              • RAW_TRACE:en cfhome2ecfm1296628853.runPage(/home/vagrant/dev/websites/nig-bis/code/webroot/page/home/home.cfm:3)
              • ID:CFINCLUDE
              • PLANTILLA:/home/vagrant/dev/websites/nig-bis/code/webroot/page/home/home.cfm
              • LÍNEA:3
              • TIPO:CFML
              • COLUMNA:0
              • RAW_TRACE:en cfdisplay2ecfm1093821753.runPage(/home/vagrant/dev/websites/nig-bis/code/webroot/page/display.cfm:6)
              • ID:CFINCLUDE
              • PLANTILLA:/home/vagrant/dev/websites/nig-bis/code/webroot/page/display.cfm
              • LÍNEA:6
              • TIPO:CFML
              • COLUMNA:0

      Cómo formatearlo entonces depende de usted.