Browse Source
Merge pull request #1181 from Budibase/bug/view-relationships
Relationship view enrichment
pull/1184/head
Michael Drury
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
12 additions and
2 deletions
-
packages/builder/src/components/backend/DataTable/popovers/GroupByPopover.svelte
-
packages/server/src/api/controllers/row.js
|
|
|
@ -2,6 +2,7 @@ |
|
|
|
import { Button, Input, Select } from "@budibase/bbui" |
|
|
|
import { backendUiStore } from "builderStore" |
|
|
|
import { notifier } from "builderStore/store/notifications" |
|
|
|
import { FIELDS } from "constants/backend" |
|
|
|
|
|
|
|
export let view = {} |
|
|
|
export let onClosed |
|
|
|
@ -9,7 +10,11 @@ |
|
|
|
$: viewTable = $backendUiStore.tables.find( |
|
|
|
({ _id }) => _id === $backendUiStore.selectedView.tableId |
|
|
|
) |
|
|
|
$: fields = viewTable && Object.keys(viewTable.schema) |
|
|
|
$: fields = |
|
|
|
viewTable && |
|
|
|
Object.entries(viewTable.schema) |
|
|
|
.filter(entry => entry[1].type !== FIELDS.LINK.type) |
|
|
|
.map(([key]) => key) |
|
|
|
|
|
|
|
function saveView() { |
|
|
|
backendUiStore.actions.views.save(view) |
|
|
|
|
|
|
|
@ -202,6 +202,11 @@ exports.fetchView = async function(ctx) { |
|
|
|
|
|
|
|
const db = new CouchDB(appId) |
|
|
|
const { calculation, group, field } = ctx.query |
|
|
|
const designDoc = await db.get("_design/database") |
|
|
|
const viewInfo = designDoc.views[viewName] |
|
|
|
if (!viewInfo) { |
|
|
|
ctx.throw(400, "View does not exist.") |
|
|
|
} |
|
|
|
const response = await db.query(`database/${viewName}`, { |
|
|
|
include_docs: !calculation, |
|
|
|
group, |
|
|
|
@ -211,7 +216,7 @@ exports.fetchView = async function(ctx) { |
|
|
|
response.rows = response.rows.map(row => row.doc) |
|
|
|
let table |
|
|
|
try { |
|
|
|
table = await db.get(ctx.params.tableId) |
|
|
|
table = await db.get(viewInfo.meta.tableId) |
|
|
|
} catch (err) { |
|
|
|
table = { |
|
|
|
schema: {}, |
|
|
|
|