Contentful API:上传图片并将其分配给条目
Contentful API: upload and assign image to an entry
我一直在使用 Contentful Management Javascript SDK 来更新我的 Contentful space 中的条目,并且能够毫无问题地更新带有文本的简单字段。
我的问题是我不知道如何更新条目中的 images;我可以将图像上传到媒体部分,但我无法分配 任何图像到条目 属性。
这是可能的还是 Contentful 的限制?
到目前为止,这是我的代码:
client.getSpace(CONTENTFUL_SPACE).then((space) => {
// retrieve my Contentful space
space.getEntry(CONTENTFUL_ENTRY).then(function (entry) {
// get a specific entry
// create a new asset in my Contentful media section
space.createAssetWithId(RANDOM_ID, {
fields: {
file: {
'en-GB': {
contentType: 'image/jpeg',
fileName: 'test.jpg',
upload: 'http://www.example.com/test.jpg'
}
}
}
})
.then(asset => asset.processForAllLocales())
.then(asset => asset.publish())
.then(function(asset) {
// assign uploaded image as an entry field
// (none of these work:)
entry.fields["image"]["en-GB"] = asset.sys.id;
entry.fields["image"]["en-GB"] = asset.fields.file["en-GB"].url;
entry.fields["image"]["en-GB"] = asset;
});
});
});
您好,我是 js SDK 的维护者,这里是假设您有一个名为 image
的媒体类型的字段,如何将资产添加到您的条目。
client.getSpace(CONTENTFUL_SPACE).then((space) => {
// retrieve my Contentful space
space.getEntry(CONTENTFUL_ENTRY).then(function (entry) {
// get a specific entry
// create a new asset in my Contentful media section
space.createAssetWithId(RANDOM_ID, {
fields: {
file: {
'en-GB': {
contentType: 'image/jpeg',
fileName: 'test.jpg',
upload: 'http://www.example.com/test.jpg'
}
}
}
})
.then(asset => asset.processForAllLocales())
.then(asset => asset.publish())
.then(function(asset) {
// assign uploaded image as an entry field
entry.fields["image"]["en-GB"] = {"sys": {"id": asset.sys.id, "linkType": "Asset", "type": "Link"}};
return entry.update()
});
});
});
我一直在使用 Contentful Management Javascript SDK 来更新我的 Contentful space 中的条目,并且能够毫无问题地更新带有文本的简单字段。
我的问题是我不知道如何更新条目中的 images;我可以将图像上传到媒体部分,但我无法分配 任何图像到条目 属性。
这是可能的还是 Contentful 的限制?
到目前为止,这是我的代码:
client.getSpace(CONTENTFUL_SPACE).then((space) => {
// retrieve my Contentful space
space.getEntry(CONTENTFUL_ENTRY).then(function (entry) {
// get a specific entry
// create a new asset in my Contentful media section
space.createAssetWithId(RANDOM_ID, {
fields: {
file: {
'en-GB': {
contentType: 'image/jpeg',
fileName: 'test.jpg',
upload: 'http://www.example.com/test.jpg'
}
}
}
})
.then(asset => asset.processForAllLocales())
.then(asset => asset.publish())
.then(function(asset) {
// assign uploaded image as an entry field
// (none of these work:)
entry.fields["image"]["en-GB"] = asset.sys.id;
entry.fields["image"]["en-GB"] = asset.fields.file["en-GB"].url;
entry.fields["image"]["en-GB"] = asset;
});
});
});
您好,我是 js SDK 的维护者,这里是假设您有一个名为 image
的媒体类型的字段,如何将资产添加到您的条目。
client.getSpace(CONTENTFUL_SPACE).then((space) => {
// retrieve my Contentful space
space.getEntry(CONTENTFUL_ENTRY).then(function (entry) {
// get a specific entry
// create a new asset in my Contentful media section
space.createAssetWithId(RANDOM_ID, {
fields: {
file: {
'en-GB': {
contentType: 'image/jpeg',
fileName: 'test.jpg',
upload: 'http://www.example.com/test.jpg'
}
}
}
})
.then(asset => asset.processForAllLocales())
.then(asset => asset.publish())
.then(function(asset) {
// assign uploaded image as an entry field
entry.fields["image"]["en-GB"] = {"sys": {"id": asset.sys.id, "linkType": "Asset", "type": "Link"}};
return entry.update()
});
});
});