Skip to content

Commit 1f8eb49

Browse files
committed
fix: don't throw an error, when we are using isArray + foreignResource and this foreighnResource record is deleted
https://web.tracklify.com/project/2b7ZVgE5/AdminForth/1396/D3GxaVk1/when-isarray+-enum-is-used-tog
1 parent c5d3701 commit 1f8eb49

File tree

3 files changed

+3
-2
lines changed

3 files changed

+3
-2
lines changed

adminforth/spa/src/components/ResourceForm.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ const columnError = (column: AdminForthResourceColumnCommon) => {
162162
return currentValues.value[column.name] && currentValues.value[column.name].reduce((error: any, item: any) => {
163163
if (column.isArray) {
164164
return error || validateValue(column.isArray.itemType, item, column) ||
165-
(item === null || !item.toString() ? t('Array cannot contain empty items') : null);
165+
(item === null || (!item || item.toString() === '') ? t('Array cannot contain empty items') : null);
166166
} else {
167167
return error;
168168
}

adminforth/spa/src/components/ValueRenderer.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
class="rounded-md m-0.5 bg-lightAnnouncementBG dark:bg-darkAnnouncementBG text-lightAnnouncementText dark:text-darkAnnouncementText py-0.5 px-2.5 text-sm"
1212
>
1313
<RouterLink
14+
v-if="foreignResource && foreignResource?.pk"
1415
class="font-medium text-lightSidebarText dark:text-darkSidebarText hover:brightness-110 whitespace-nowrap"
1516
:to="{
1617
name: 'resource-show',

adminforth/spa/src/views/EditView.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ const editableRecord = computed(() => {
147147
coreStore.resource.columns.forEach(column => {
148148
if (column.foreignResource) {
149149
if (column.isArray?.enabled) {
150-
newRecord[column.name] = newRecord[column.name]?.map((fr: { pk: any }) => fr.pk);
150+
newRecord[column.name] = newRecord[column.name]?.map((fr: { pk: any }) => fr?.pk);
151151
} else {
152152
newRecord[column.name] = newRecord[column.name]?.pk;
153153
}

0 commit comments

Comments
 (0)