MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come posso specificare un bucket GridFS?

Questo non è ben documentato in gridfs-stream o nel driver mongodb nativo sottostante che utilizza, ma ecco come lo fai:

Ecco le options oggetto dal flusso gridfs createWriteStream esempio (nota la root opzione):

{
   _id: '50e03d29edfdc00d34000001', 
   filename: 'my_file.txt',         
   mode: 'w', 
   chunkSize: 1024, 
   content_type: 'plain/text', 
   root: 'my_collection',  // Bucket will be 'my_collection' instead of 'fs'
   metadata: {
       ...
   }
}

Perché funziona:

gridfs-stream passa attraverso le options oggetto si passa una chiamata a createWriteStream o createReadStream al driver mongodb sottostante per creare un gridStore oggetto per rappresentare il file. Il driver mongodb a sua volta riconosce root nelle options oggetto come sostituzione della stringa di prefisso del bucket della griglia "fs" predefinita.