7

我一直在我的 Meteor 项目中使用 Collection2 和 Autoform,让事情变得容易多了!

但是,当我删除不安全时,它不再插入(自动提交按钮)。我期待这个!

但是,我已经搜索过,但找不到让它工作的标准方法?我在 lib 文件夹中定义了一个模式,并且我的 Autoform 作为模板中的快速表单。我知道我需要允许客户端插入(我不想这样做)或将其传输到服务器端(可能带有方法?)

我们欢迎所有的建议!我正在寻找实现它的标准方法。

4

1 回答 1

10

经过大量挖掘后找到了我自己的答案。为插入、更新和删除创建了允许规则:

Posts = new Mongo.Collection('posts');

//SECURITY - Allow Callbacks for posting

Posts.allow({
  insert: function(userId, doc) {
    // only allow posting if you are logged in
    return !! userId; 
  },
  update: function(userId, doc) {
    // only allow updating if you are logged in
    return !! userId; 
  },
  remove: function(userID, doc) {
    //only allow deleting if you are owner
    return doc.submittedById === Meteor.userId();
  }
});

//Schema then defined as usual

请注意,submitById 是我的集合中保留 userId 的字段。如果您将其称为不同的名称,请更改它!

希望这可以帮助有类似问题的人。

于 2014-12-04T11:22:54.973 回答