无法访问或使用 mongo 数据库终端中显示的文档

Cannot access or use documents showing in mongo db terminal

我创建了一个名为 Stampest 的 collection,用于存储用户创建的上传图像和标题字符串的引用。使用 ostrio:autoform package.此包创建一个名为 Images 的 collection,其中存储了所有用户上传的图像并引用 to/from。

当我在终端中使用

查询 mongo 时
db.stampest.find({})

我得到条目

这说明数据库中有文件,在StampestCollection。但是 问题 是当我在 Meteor Toys 调试中查看 collection 时,它说它是空的,当我插入文档时,在这种情况下,图片和标题,collection瞬间变为1,geos变回0。终端或控制台没有错误

因此,我无法访问这些文档,我该怎么办?

这是schema.js

Schemas = {};
Stampest  = new Meteor.Collection('stampest');

Stampest.allow({  
  insert: function (userId, doc) {
    return userId;
  },
  update: function (userId, doc, fields, modifier) {
    // can only change your own documents
    return doc.userId === userId;
  },
  remove: function (userId, doc) {
    // can only remove your own documents
    return doc.userId === userId;
  }
});


Schemas.Stampest = new SimpleSchema({
  title: {
    type: String,
    max: 60
  },
  picture: {
    type: String,
    autoform: {
      afFieldInput: {
        type: 'fileUpload',
        collection: 'Images',
        // uploadTemplate: 'uploadField' // <- Optional
        // previewTemplate: 'uploadPreview' // <- Optional
      }
    }
  }
});

Stampest.attachSchema(Schemas.Stampest);

publish是这样的:

Meteor.publish('stampest', function () {
    return Stampest.find({author: this.userId}).fetch();
     console.log(Stampest.find());
});

用户像这样插入 imagetitle

<template name="createStamp">
    <div class="grid-block">
        <div class="grid-container">
            <div class="upload-img">
                <a href="{{file.link}}">{{file.original.name}}</a>
            </div>

            <div class="new-stamp-container">
            {{> quickForm collection="Stampest" type="insert" id="insertStampForm" class="new-stamp-form"}}
            </div>
        </div>  
    </div>
</template>

根据我在您的代码中看到的情况,您正在 return 数据库项的 Array 而不是代码中的 Cursor。 如果您查看 https://docs.meteor.com/api/pubsub.html,您会注意到常规的 publications return 简单游标或游标数组,而不是您获取的数据。

编辑:另外,您出版物中的 console.log 永远不会被解释为 return 位于前一行。