Fix nested m2m updates

Fixes #849
This commit is contained in:
rijkvanzanten
2020-11-03 17:51:16 -05:00
parent bd388b93d9
commit e5d70ebde2
2 changed files with 13 additions and 11 deletions

View File

@@ -325,6 +325,8 @@ export class PayloadService {
const relatedRecord: Partial<Item> = payload[relation.many_field];
const hasPrimaryKey = relatedRecord.hasOwnProperty(relation.one_primary);
if (['string', 'number'].includes(typeof relatedRecord)) continue;
let relatedPrimaryKey: PrimaryKey = relatedRecord[relation.one_primary];
const exists = hasPrimaryKey && !!(await itemsService.readByKey(relatedPrimaryKey));

View File

@@ -10,6 +10,17 @@ export default function useSort(
) {
const sort = ref<Sort>({ by: sortField.value || fields.value[0], desc: false });
const sortedItems = computed(() => {
const sField = sortField.value;
if (sField === null || sort.value.by !== sField) return null;
const desc = sort.value.desc;
const sorted = sortBy(items.value, [sField]);
return desc ? sorted.reverse() : sorted;
});
return { sort, sortItems, sortedItems };
function sortItems(newItems: Record<string, any>[]) {
const sField = sortField.value;
if (sField === null) return;
@@ -21,15 +32,4 @@ export default function useSort(
emit(itemsSorted);
}
const sortedItems = computed(() => {
const sField = sortField.value;
if (sField === null || sort.value.by !== sField) return null;
const desc = sort.value.desc;
const sorted = sortBy(items.value, [sField]);
return desc ? sorted.reverse() : sorted;
});
return { sort, sortItems, sortedItems };
}