|
|
@ -104,8 +104,10 @@ exports.preview = async function (ctx) { |
|
|
const db = new CouchDB(ctx.appId) |
|
|
const db = new CouchDB(ctx.appId) |
|
|
|
|
|
|
|
|
const datasource = await db.get(ctx.request.body.datasourceId) |
|
|
const datasource = await db.get(ctx.request.body.datasourceId) |
|
|
|
|
|
// preview may not have a queryId as it hasn't been saved, but if it does
|
|
|
const { fields, parameters, queryVerb, transformer } = ctx.request.body |
|
|
// this stops dynamic variables from calling the same query
|
|
|
|
|
|
const { fields, parameters, queryVerb, transformer, queryId } = |
|
|
|
|
|
ctx.request.body |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
const { rows, keys, info, extra } = await Runner.run({ |
|
|
const { rows, keys, info, extra } = await Runner.run({ |
|
|
@ -115,6 +117,7 @@ exports.preview = async function (ctx) { |
|
|
fields, |
|
|
fields, |
|
|
parameters, |
|
|
parameters, |
|
|
transformer, |
|
|
transformer, |
|
|
|
|
|
queryId, |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
ctx.body = { |
|
|
ctx.body = { |
|
|
@ -143,6 +146,7 @@ async function execute(ctx, opts = { rowsOnly: false }) { |
|
|
fields: query.fields, |
|
|
fields: query.fields, |
|
|
parameters: ctx.request.body.parameter, |
|
|
parameters: ctx.request.body.parameter, |
|
|
transformer: query.transformer, |
|
|
transformer: query.transformer, |
|
|
|
|
|
queryId: ctx.params.queryId, |
|
|
}) |
|
|
}) |
|
|
if (opts && opts.rowsOnly) { |
|
|
if (opts && opts.rowsOnly) { |
|
|
ctx.body = rows |
|
|
ctx.body = rows |
|
|
|