#node.js #mongodb #mongoose #gridfs #gridfs-stream
#node.js #mongodb #мангуст #gridfs #gridfs-stream
Вопрос:
Я хотел бы использовать модель mongodb с GridFSBucket.
Я понял, что вы можете использовать метаданные с помощью GridFSUploadOptions, и, похоже, в этом случае они функционируют как модель, но я получаю сообщение об ошибке «TypeError: mongodb.GridFSUploadOptions не является конструктором», когда я его использую
let bucket = new mongodb.GridFSBucket(conn.db, {
bucketName: 'tracks'
});
let options = new mongodb.GridFSUploadOptions();
let uploadStream = bucket.openUploadStream(trackName, options.metadata(new Document("Speaker", "Bill Gates").append("Duration", "1hr")));
Я ожидаю, что у меня будет способ добавить дополнительную информацию о пользователе, добавленную в созданный файл.
Ответ №1:
Я получил это после 3 дней мозгового штурма, gridfs хранит данные в виде .files и .chunks, я не знал, как построить модель для этого, после исследования я понял, что вы могли бы добавить больше информации в .файлы, хранящиеся в базе данных о данных. В Интернете нет ничего о том, как это сделать, только подсказки, подобные этому «openUploadStream (filename, options)», после нескольких часов исследований я, наконец, получил это каким-то образом.
let bucket = new mongodb.GridFSBucket(conn.db, {
bucketName: 'tracks'
});
let uploadStream = bucket.openUploadStream(trackName, {chunkSizeBytes:null, metadata:{speaker: "Bill Gates", duration:"1hr"}, contentType: null, aliases: null});
проверьте .файлы в базе данных, метаданные будут заполнены.