Browse Source

Merge pull request #6582 from nocodb/nc-fix/lookup-link-issue

Lookup link issue
pull/6606/head
Raju Udava 11 months ago committed by GitHub
parent
commit
62823db617
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      packages/nc-gui/components/smartsheet/VirtualCell.vue
  2. 5
      packages/nc-gui/components/smartsheet/column/LookupOptions.vue
  3. 10
      packages/nc-gui/components/virtual-cell/Links.vue

2
packages/nc-gui/components/smartsheet/VirtualCell.vue

@ -51,6 +51,8 @@ const isForm = inject(IsFormInj, ref(false))
const isExpandedForm = inject(IsExpandedFormOpenInj, ref(false))
const isUnderLookup = inject(IsUnderLookupInj, ref(false))
function onNavigate(dir: NavigateDir, e: KeyboardEvent) {
emit('navigate', dir)

5
packages/nc-gui/components/smartsheet/column/LookupOptions.vue

@ -44,7 +44,7 @@ const refTables = computed(() => {
isLinksOrLTAR(column) &&
!column.system &&
column.source_id === meta.value?.source_id &&
(!appInfo.value.ee || (column?.colOptions as any)?.type === 'bt'),
(!appInfo.value.ee || vModel.value.fk_relation_column_id === column.id || (column?.colOptions as any)?.type === 'bt'),
)
.map((column) => ({
col: column.colOptions,
@ -61,7 +61,8 @@ const columns = computed<ColumnType[]>(() => {
return []
}
return metas.value[selectedTable.id].columns.filter(
(c: ColumnType) => !isSystemColumn(c) && c.id !== vModel.value.id && c.uidt !== UITypes.Links,
(c: ColumnType) =>
vModel.value.fk_lookup_column_id === c.id || (!isSystemColumn(c) && c.id !== vModel.value.id && c.uidt !== UITypes.Links),
)
})

10
packages/nc-gui/components/virtual-cell/Links.vue

@ -77,6 +77,8 @@ const onAttachRecord = () => {
}
const openChildList = () => {
if (isUnderLookup.value) return
if (!isLocked.value) {
childListDlg.value = true
}
@ -98,6 +100,12 @@ const localCellValue = computed<any[]>(() => {
}
return []
})
const openListDlg = () => {
if (isUnderLookup.value) return
listItemsDlg.value = true
}
</script>
<template>
@ -120,7 +128,7 @@ const localCellValue = computed<any[]>(() => {
<MdiPlus
v-if="(!readOnly && isUIAllowed('dataEdit')) || isForm"
class="select-none !text-md text-gray-700 nc-action-icon nc-plus"
@click.stop="listItemsDlg = true"
@click.stop="openListDlg"
/>
</div>

Loading…
Cancel
Save