Browse Source
Merge pull request #2272 from Budibase/fix/export-2193
Fix exporting data from table
pull/2287/head
Martin McKeaveney
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with
11 additions and
3 deletions
-
packages/builder/src/components/backend/DataTable/modals/ExportModal.svelte
-
packages/server/src/api/controllers/view/exporters.js
-
packages/server/src/middleware/currentapp.js
|
|
|
@ -18,10 +18,12 @@ |
|
|
|
let exportFormat = FORMATS[0].key |
|
|
|
|
|
|
|
async function exportView() { |
|
|
|
const filename = `export.${exportFormat}` |
|
|
|
download( |
|
|
|
`/api/views/export?view=${encodeURIComponent( |
|
|
|
view |
|
|
|
)}&format=${exportFormat}` |
|
|
|
)}&format=${exportFormat}`, |
|
|
|
filename |
|
|
|
) |
|
|
|
} |
|
|
|
</script> |
|
|
|
|
|
|
|
@ -3,7 +3,11 @@ exports.csv = function (headers, rows) { |
|
|
|
|
|
|
|
for (let row of rows) { |
|
|
|
csv = `${csv}\n${headers |
|
|
|
.map(header => `"${row[header]}"`.trim()) |
|
|
|
.map(header => { |
|
|
|
let val = row[header] |
|
|
|
val = typeof val === "object" ? JSON.stringify(val) : val |
|
|
|
return `"${val}"`.trim() |
|
|
|
}) |
|
|
|
.join(",")}` |
|
|
|
} |
|
|
|
return csv |
|
|
|
|
|
|
|
@ -10,7 +10,7 @@ const CouchDB = require("../db") |
|
|
|
|
|
|
|
module.exports = async (ctx, next) => { |
|
|
|
// try to get the appID from the request
|
|
|
|
const requestAppId = getAppId(ctx) |
|
|
|
let requestAppId = getAppId(ctx) |
|
|
|
// get app cookie if it exists
|
|
|
|
let appCookie = null |
|
|
|
try { |
|
|
|
@ -29,6 +29,8 @@ module.exports = async (ctx, next) => { |
|
|
|
clearCookie(ctx, Cookies.CurrentApp) |
|
|
|
return next() |
|
|
|
} |
|
|
|
// if the request app ID wasn't set, update it with the cookie
|
|
|
|
requestAppId = requestAppId || appId |
|
|
|
} |
|
|
|
|
|
|
|
let appId, |
|
|
|
|