Commit 07ccb638 by Matt Weber

Stringify object within multi-valued fields

If an object is found within an array (nested docs), stringify it
during flattening.

Closes #100
parent 3c361f98
...@@ -271,7 +271,17 @@ function flatten_json(object,root,array) { ...@@ -271,7 +271,17 @@ function flatten_json(object,root,array) {
var rootname = root.length == 0 ? index : root + '.' + index; var rootname = root.length == 0 ? index : root + '.' + index;
if(typeof obj == 'object' ) { if(typeof obj == 'object' ) {
if(_.isArray(obj)) { if(_.isArray(obj)) {
if(obj.length === 1 && _.isNumber(obj[0])) { if(obj.length > 0 && typeof obj[0] === 'object') {
var strval = '';
for (var objidx = 0, objlen = obj.length; objidx < objlen; objidx++) {
if (objidx > 0) {
strval = strval + ', ';
}
strval = strval + JSON.stringify(obj[objidx]);
}
array[rootname] = strval;
} else if(obj.length === 1 && _.isNumber(obj[0])) {
array[rootname] = parseFloat(obj[0]); array[rootname] = parseFloat(obj[0]);
} else { } else {
array[rootname] = typeof obj === 'undefined' ? null : obj.join(','); array[rootname] = typeof obj === 'undefined' ? null : obj.join(',');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment