2016-02-05 30 views
1

我正在使用Meteor本地文件系統使用FS.Store.FileSystem在特定文件夾中上傳我的資產。但是,我想根據類型元數據將這些資產分類上傳到單獨的文件夾中。 我無法弄清楚如何在Meteor中做到這一點。原始文檔建議使用fileKeyMaker方法。有人可以解釋它,如何使用它來存儲資產在單獨的文件夾?在Meteor CFS文件系統的動態子文件夾中上傳文件

https://github.com/CollectionFS/Meteor-CollectionFS/wiki/How-to:-Customize-the-folders-on-the-filesystem

AssetFiles = new FS.Collection("assets",{ 
    stores : [ 
      new FS.Store.FileSystem("AssetBundle",{path : '~/uploads'}) 
    ], 
    filter : { 
     maxSize: 5048576, 
     allow : { 
       extensions: ['pdf','FBX','cad','jpeg','gif','png','jpg'] 
     } 
    } 
}); 
+0

您能否請您將我的答案標記爲正確的,以幫助他人。非常感激。 – msj121

回答

0

如果您創建的文件夾作爲一個黑客,它並不難。簡單地做類似如下:

AssetFiles = new FS.Collection("assets",{ 
stores : [ 
     new FS.Store.FileSystem("AssetBundle",{path : '~/uploads', 
      fileKeyMaker: function (fileObj) { 
       // Lookup the copy 
       var store = fileObj && fileObj._getInfo("assets"); 
       // If the store and key is found return the key 
       if (store && store.key) return store.key; 

       var filename = fileObj.name(); 
       if(filename.indexOf("pdf")>-1){ 
        // If no store key found we resolve/generate a key 
        // this should be: "~/uploads/pdf/<filename>" 
        return "pdf/"+filename; 
       } 

      } 
     }) 
], 
filter : { 
    maxSize: 5048576, 
    allow : { 
      extensions: ['pdf','FBX','cad','jpeg','gif','png','jpg'] 
    } 
} 
}); 

我試圖做同樣的事情,沒有運氣,但你有有限的文件夾的數量。希望以上的作品。

相關問題