fix(richtext-*): hasMany relationships not populated correctly

This commit is contained in:
Alessio Gravili
2023-10-21 23:58:47 +02:00
parent 863b79348b
commit e197e0316f
2 changed files with 35 additions and 30 deletions

View File

@@ -36,6 +36,7 @@ export const recurseNestedFields = ({
if (field.type === 'relationship') {
if (field.hasMany && Array.isArray(data[field.name])) {
if (Array.isArray(field.relationTo)) {
// polymorphic relationship
data[field.name].forEach(({ relationTo, value }, i) => {
const collection = req.payload.collections[relationTo]
if (collection) {
@@ -99,6 +100,7 @@ export const recurseNestedFields = ({
}
}
if (typeof data[field.name] !== 'undefined' && typeof field.relationTo === 'string') {
if (!('hasMany' in field) || !field.hasMany) {
const collection = req.payload.collections[field.relationTo]
promises.push(
populate({
@@ -115,6 +117,7 @@ export const recurseNestedFields = ({
}),
)
}
}
} else if (fieldHasSubFields(field) && !fieldIsArrayType(field)) {
if (fieldAffectsData(field) && typeof data[field.name] === 'object') {
recurseNestedFields({

View File

@@ -76,6 +76,7 @@ export const recurseNestedFields = ({
data[field.name]?.value &&
data[field.name]?.relationTo
) {
if (!('hasMany' in field) || !field.hasMany) {
const collection = req.payload.collections[data[field.name].relationTo]
promises.push(
populate({
@@ -93,6 +94,7 @@ export const recurseNestedFields = ({
)
}
}
}
if (typeof data[field.name] !== 'undefined' && typeof field.relationTo === 'string') {
const collection = req.payload.collections[field.relationTo]
promises.push(