pass the desired attribute down to the datasource
[xtuple] / node-datasource / routes / export.js
index d0edc6f..80269c2 100644 (file)
@@ -161,8 +161,19 @@ regexp:true, undef:true, strict:true, trailing:true, white:true */
           // "export" will have to do.
         }
 
-        resultAsCsv = jsonToCsv(result.data.data);
-        res.attachment(filename + ".csv");
+        try {
+          var attr = requestDetails.query
+                   && requestDetails.query.details
+                   && requestDetails.query.details.attr;
+          if (attr) {
+            resultAsCsv = jsonToCsv(result.data.data[0][attr]);
+          } else {
+            resultAsCsv = jsonToCsv(result.data.data);
+          }
+          res.attachment(filename + ".csv");
+        } catch (error) {
+          resultAsCsv = jsonToCsv(error);
+        }
         res.send(resultAsCsv);
       }
     });