Merge pull request #737 from Budibase/bug/relationship-bugs

Minor - Some relationship bugs
This commit is contained in:
Michael Drury 2020-10-16 14:21:14 +01:00 committed by GitHub
commit 062c92b1c0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 21 additions and 7 deletions

View File

@ -1,4 +1,4 @@
import { values, cloneDeep } from "lodash/fp" import { cloneDeep } from "lodash/fp"
import getNewComponentName from "../getNewComponentName" import getNewComponentName from "../getNewComponentName"
import { backendUiStore } from "builderStore" import { backendUiStore } from "builderStore"
import { writable, get } from "svelte/store" import { writable, get } from "svelte/store"
@ -129,7 +129,10 @@ const setPackage = (store, initial) => async pkg => {
initial.appId = pkg.application._id initial.appId = pkg.application._id
initial.pages = pkg.pages initial.pages = pkg.pages
initial.hasAppPackage = true initial.hasAppPackage = true
initial.screens = values(pkg.screens) initial.screens = [
...Object.values(main_screens),
...Object.values(unauth_screens),
]
initial.builtins = [getBuiltin("##builtin/screenslot")] initial.builtins = [getBuiltin("##builtin/screenslot")]
initial.appInstances = pkg.application.instances initial.appInstances = pkg.application.instances
initial.appId = pkg.application._id initial.appId = pkg.application._id

View File

@ -42,6 +42,7 @@
async function deleteTable() { async function deleteTable() {
await backendUiStore.actions.tables.delete(table) await backendUiStore.actions.tables.delete(table)
store.deleteScreens(templateScreens) store.deleteScreens(templateScreens)
await backendUiStore.actions.tables.fetch()
notifier.success("Table deleted") notifier.success("Table deleted")
hideEditor() hideEditor()
} }

View File

@ -1,6 +1,7 @@
const CouchDB = require("../index") const CouchDB = require("../index")
const { IncludeDocs, getLinkDocuments } = require("./linkUtils") const { IncludeDocs, getLinkDocuments } = require("./linkUtils")
const { generateLinkID } = require("../utils") const { generateLinkID } = require("../utils")
const Sentry = require("@sentry/node")
/** /**
* Creates a new link document structure which can be put to the database. It is important to * Creates a new link document structure which can be put to the database. It is important to
@ -289,11 +290,15 @@ class LinkController {
const schema = table.schema const schema = table.schema
for (let fieldName of Object.keys(schema)) { for (let fieldName of Object.keys(schema)) {
const field = schema[fieldName] const field = schema[fieldName]
try {
if (field.type === "link") { if (field.type === "link") {
const linkedTable = await this._db.get(field.tableId) const linkedTable = await this._db.get(field.tableId)
delete linkedTable.schema[table.name] delete linkedTable.schema[field.fieldName]
await this._db.put(linkedTable) await this._db.put(linkedTable)
} }
} catch (err) {
Sentry.captureException(err)
}
} }
// need to get the full link docs to delete them // need to get the full link docs to delete them
const linkDocs = await this.getTableLinkDocs() const linkDocs = await this.getTableLinkDocs()

View File

@ -11,7 +11,12 @@
import { onMount } from "svelte" import { onMount } from "svelte"
import AgGrid from "@budibase/svelte-ag-grid" import AgGrid from "@budibase/svelte-ag-grid"
import { TextButton as DeleteButton, Icon, Modal, ModalContent } from "@budibase/bbui" import {
TextButton as DeleteButton,
Icon,
Modal,
ModalContent,
} from "@budibase/bbui"
export let _bb export let _bb
export let datasource = {} export let datasource = {}