Добавление мультимедийного поля при создании новой записи
Я искал и просматривал все документы SDK и документы Contentful API, у меня возникают трудности с пониманием того, как добавить поле мультимедиа со ссылкой на ресурс при создании новой записи. Я могу успешно создать другие поля, но медиа-поле должно быть объектом, но я не уверен, как именно его отформатировать, чтобы Contentful его принял.
const videoAsset = yield client.getAsset(assetID)
fields = {
title: {
"en-US": 'Title' //works
},
description: {
"en-US": 'Description' //works
},
video: {
"en-US": //contenful api wants an object, what does this object look like?
//i have a published asset in videoAsset returned by client.getAsset()
},
team: {
"en-US": 'Community' //works
},
}
const entryCreated = yield space.createEntry(action.payload.contentType, {
fields: fields
})
Когда я говорю "работает", я имею в виду, что могу успешно создать запись, которая появляется в содержательном пространстве.
1 ответ
Решение
Я понял!
Этот человек делал не то же самое, но ответ с точки зрения форматирования был здесь:
https://github.com/contentful/contentful-management.js/issues/57
В основном поле должно выглядеть так:
const videoAsset = yield client.getAsset(assetID)
fields = {
title: {
"en-US": 'Title' //works
},
description: {
"en-US": 'Description' //works
},
video: {
"en-US": {
sys: {
type: "Link", linkType: "Asset", id: assetID
}
}
}, //this formatting works!
team: {
"en-US": 'Community' //works
},
}
const entryCreated = yield space.createEntry(action.payload.contentType, {
fields: fields
})