javascript-如何为流星和collectionfs文件系统的文件指定路径和文件名

我正在使用CollectionFS来存储从流星应用程序上传的文件.我正在使用cfs-filesystem软件包使用本地文件系统保存文件.

现在,当我上传文件时,该文件会保存到〜/ uploads / images-h9jWnALqSZMpAX4h4-IMG_3737.JPG

我有一个需要使用的现有文件系统结构,如果需要,我们需要易于手动遍历这些文件.

假设我要将该路径自定义为类似于〜/ uploads / jaredtmartin / IMG_3737.jpg的路径.当其他用户上传时,它会以他的名字进入一个新文件夹,例如〜/ uploads / suzyq / IMG_1234.jpg.能做到吗如果不是,我可以在哪里修改代码以使其实现?

解决方法:

您可以使用fileKeyMaker,请参阅here

var imageStore = new FS.Store.FileSystem("images", {
  fileKeyMaker: function (fileObj) {
    // Lookup the copy
    var store = fileObj && fileObj._getInfo(name);
    // If the store and key is found return the key
    if (store && store.key) return store.key;

    // TO CUSTOMIZE, REPLACE CODE AFTER THIS POINT

    var filename = fileObj.name();
    var filenameInStore = fileObj.name({store: name});

    // If no store key found we resolve / generate a key
    return fileObj.collectionName + '-' + fileObj._id + '-' + (filenameInStore || filename);
  }
});
上一篇:javascript-在Meteor中使用全局帮助器的模板帮助器中的异常


下一篇:javascript-如何在现有的Meteor项目中使用语义UI?