我正在使用Javascript使用contentful-management節點模塊處理Contentful項目。 我想在包含新條目的條目中創建引用。使用參考字段更新條目
我得到在瀏覽器控制檯以下消息:
Uncaught (in promise) Error: {
"request": {
"url": "https://api.contentful.com:443/spaces/59mi8sr8zemv/entries/2Bxpz2RgA4AQImQOssey8w/published",
"headers": {
"Accept": "application/json, text/plain, */*",
"Content-Type": "application/vnd.contentful.management.v1+json",
"X-Contentful-User-Agent": "contentful-management.js/1.3.1",
"Authorization": "Bearer <my management-api key>",
"X-Contentful-Version": 373
},
"method": "put",
"payloadData": null
},
"status": 422,
"statusText": "Unprocessable Entity",
"requestId": "d00dde60cd564a8db84da90cd671b19f",
"message": "Validation error",
"details": {
"errors": [
{
"name": "notResolvable",
"link": {
"id": "2Yfc2H8q9OSoOccGcSg4aU",
"linkType": "Entry",
"type": "Link"
},
"path": [
"fields",
"link",
"en-US",
7
]
}
]
}
}
at errorHandler (main-addTrack.bundle.js:3096)
當我看在contentful Web應用程序的新條目是存在的,但保存爲草稿。我試圖添加條目的條目說,它需要更新。
這是我用來創建和更新新條目的功能。
function publishTrack(){
//-- Creates the new track in events, with ref to korrekt date
client.getSpace(<my_spaceId>)
.then((space) => {
space.createEntry('events', newTrack)
.then(event => {
eventID = event.sys.id;
(entry) => entry.publish()
//This function is gets the entry of choosen date
space.getEntry(dateId)
.then((entry) => {
//Gets the ID from the newly created event
var newId = {sys: {
id: eventID,
linkType: "Entry",
type:"Link"
}}
//Creates a reference field in dates for show & do
entry.fields.link["en-US"].push(newId)
//update the event
return entry.update()
space.getEntry(eventID)
.then ((eventID) => entry.publish())
})
space.getEntry(dateId)
.then ((entry) => entry.publish());
})
publishModal.style.display = 'block';
publishModal.style.opacity = '1';
publishModal.style.pointerEvents = 'auto';
publishModal.style.zIndex = '99999';
})
}//end publish track
請爲任何錯誤道歉,這是我在stackowerflow上的第一篇文章。
所以我需要先創建引用字段,然後是條目?但是當我需要參考字段中的條目ID時,我該怎麼做? – Sara