我对使用Strapi无头CMS相当陌生。我试图将一些数据填充到数据库中,就像将knex与node js一起使用一样,但是,我不确定这样做。我看过一个教程,其中在config/functions/bootstrap.js
内,我们将module.export
一个异步函数用于填充数据。我已经这样定义了我的代码:
"use strict";
const data = [
{
title: "string",
description:"string",
director: "string",
assistantDirector: "string",
directorOfPhotography: "string",
firstAc: "string",
sound: "string",
thumbnail: "",
images: "",
hairAndMakeUp: "string",
productionAssistant: "string",
writer: "string",
cast: "string",
video: "string",
dateFilmed: 2020,
}];
module.exports = async () => {
data.forEach(reel => {
await strapi.services.reel.create({
title: reel.title,
description: reel.description,
director: reel.director,
assistantDirector: reel.assistantDirector,
directorOfPhotography: reel.directorOfPhotography,
firstAc: reel.firstAc,
sound: reel.sound,
hairAndMakeUp: reel.hairAndMakeUp,
productionAssistant: reel.productionAssistant,
writer: reel.writer,
cast: reel.cast,
video: reel.video,
dateFilmed: reel.dateFilmed,
});
})
};
但是,在运行strapi develop
之后,我遇到了Error while running command develop: undefined
错误。我想念什么?
谢谢您的时间。
答案 0 :(得分:0)
问题解决了。
事实证明,删除异步/等待可以解决问题。我意识到该功能甚至不必是异步的。不太确定为什么会这样,但这是最终结果:
"use strict";
const data = [
{
title: "string",
description:"string",
director: "string",
assistantDirector: "string",
directorOfPhotography: "string",
firstAc: "string",
sound: "string",
thumbnail: "",
images: "",
hairAndMakeUp: "string",
productionAssistant: "string",
writer: "string",
cast: "string",
video: "string",
dateFilmed: 2020,
}];
const seedReel = (data) => {
data.forEach((reel) => {
strapi.query("reel").create({
title: reel.title,
description: reel.description,
director: reel.director,
assistantDirector: reel.assistantDirector,
directorOfPhotography: reel.directorOfPhotography,
firstAc: reel.firstAc,
sound: reel.sound,
hairAndMakeUp: reel.hairAndMakeUp,
productionAssistant: reel.productionAssistant,
writer: reel.writer,
cast: reel.cast,
video: reel.video,
dateFilmed: reel.dateFilmed,
});
});
};
module.exports = seedReel(data)