使用find()时返回undefined的FS.Collection实例

时间:2015-03-09 21:48:56

标签: javascript meteor

我在网络开发方面有点新,所以如果我错误地使用FSCollection,我会道歉。

我有一个接收音频文件的FS.Collection实例

LectureAudio = new FS.Collection("lectureAudio", {
    stores: [new FS.Store.FileSystem("lectureAudio", {
        path:"~/digicog/audioUpload",
        filter: {
            allow: {
                contentTypes: ['audio/*'],
                extensions: ['mp3', 'wav', 'MP3', 'WAV']
            }
        }
    })]
});

我正在使用输入文件元素将音频文件插入到集合中。

Template.audioControl.events({
  'change #lecAudioPath': function (event) {
    var files = document.getElementById("lecAudioPath").files;
    if(files.length != 0){  
      var lecName = Router.current().params._id;
      var audioFile = new FS.File(files[0]);
      audioFile.metadata = {LectureId: lecName};
      LectureAudio.insert(audioFile);
    }
   }
});

但是当我在控制台中键入LectureAudio.find().fetch()进行测试时,我得到空括号[]。 即使我使用以下方式检查我的mongo数据库:

>db.getCollection("cfs.lectureAudio.filerecord").find()

我看到我的收藏已填充。

{ "_id" : "wwyQtZZNwicbheCch", "copies" : { "lectureAudio" : { "name" : "fWnQyQpEWSXRDeuJq.mp3" } }, "original" : { "name" : "test1.mp3", "updatedAt" : ISODate("2013-08-16T16:07:40Z"), "size" : 8087475, "type" : "audio/mp3" }, "uploadedAt" : ISODate("2015-03-07T06:05:53.589Z") }
{ "_id" : "3rBbFfnGAT3Z8Bkti", "copies" : { "lectureAudio" : { "name" : "Efn235HcCyGrm5TPx.mp3" } }, "original" : { "name" : "test2.mp3", "updatedAt" : ISODate("2013-08-16T16:07:52Z"), "size" : 8806339, "type" : "audio/mp3" }, "uploadedAt" : ISODate("2015-03-07T06:17:06.234Z") }
{ "_id" : "RJ7LLH7XhgG2PnP9g", "copies" : { "lectureAudio" : { "name" : "fWnQyQpEWSXRDeuJq.mp3" } }, "original" : { "name" : "test3.mp3", "updatedAt" : ISODate("2013-08-16T16:07:52Z"), "size" : 8806339, "type" : "audio/mp3" }, "uploadedAt" : ISODate("2015-03-07T06:18:30.454Z") }
{ "_id" : "9YY33kFFbP7oBMjmr", "copies" : { "lectureAudio" : { "name" : "y7KQmq3ReqcP7Pzyw.mp3" } }, "original" : { "name" : "test4.mp3", "updatedAt" : ISODate("2013-08-16T16:07:40Z"), "size" : 8087475, "type" : "audio/mp3" }, "uploadedAt" : ISODate("2015-03-07T20:50:21.226Z") }

如何展示该系列?

1 个答案:

答案 0 :(得分:0)

您可能忘记发布和订阅该集合。

在服务器上:

Meteor.publish('lecture_audio', function () {
  return LectureAudio.find();
}

在客户端:

Meteor.subscribe('lecture_audio');

文档here

中的更多信息