Привет всем, когда я запускаю свою мутацию в graphQL, всегда появляется эта ошибка "Photo.addPhoto не является функцией"
есть код, который я хочу вызвать в моей мутации
const storeFs = ({ stream, filename }) => {
const uploadDir = '../backend/photo';
const path = `${uploadDir}/${filename}`;
return new Promise((resolve, reject) =>
stream
.on('error', error => {
if (stream.truncated)
fs.unlinkSync(path);
reject(error);
})
.pipe(fs.createWriteStream(path))
.on('error', error => reject(error))
.on('finish', error => reject(error))
);
}
PhotoSchema.statics.addPhoto = async function(args) {
const { description, tags } = args;
const { filename, mimetype, createReadStream } = await args.file;
const stream = createReadStream();
const pathObj = await storeFs({ stream, filename });
const fileLocation = pathObj.path;
const photo = new Photo ({
fileLocation,
description,
tags
})
return photo;
}
и это моя мутация:
ajoutPhoto: {
description: 'Upload an image',
type: PhotoType,
args: {
description: { type: GraphQLString },
tags: { type: GraphQLString },
file: {
description: 'just a to upload',
type: GraphQLUpload
}
},
async resolve(parentValue, { args }) {
return Photo.addPhoto(args);
}
}