5

在示例应用程序“聚会”中,有一组用于聚会收集的允许/拒绝规则。的规则insert如下所示:

Parties.allow({
  insert: function (userId, party) {
    return false; // no cowboy inserts -- use createParty method
  },...

同时,createParty 方法实现了 Party.insert({....}),它在某种程度上不受应用于 Party 集合的规则的影响。

.....
return Parties.insert({
      owner: this.userId,
      x: options.x,
      y: options.y,
      title: options.title,
      description: options.description,
      public: !! options.public,
      invited: [],
      rsvps: []
    });
.....

有人可以解释为什么 createParty 方法不受规则影响吗?

谢谢你。

4

1 回答 1

10

通过从客户端调用 a 在服务器和客户端上运行的createPartyis 。在客户端它不会插入任何数据,但在服务器上运行的方法会插入该方。Meteor.methodsMeteor.call('createParties')

流星allowdeny规则直接控制来自客户端的内容,而不适用于在服务器端运行的任何内容。

于 2013-01-27T13:56:06.443 回答