在示例应用程序“派对”中,有一组允许/拒绝规则供缔约方收集。
insert
的规则如下所示:
Parties.allow({
insert: function (userId, party) {
return false; // no cowboy inserts -- use createParty method
},...
同时方法createParty实现了Parties.insert({....}),该方式不受应用于缔约方集合的规则的影响。
.....
return Parties.insert({
owner: this.userId,
x: options.x,
y: options.y,
title: options.title,
description: options.description,
public: !! options.public,
invited: [],
rsvps: []
});
.....
有人可以解释为什么createParty方法不受规则影响吗?
谢谢。
答案 0 :(得分:10)
createParty
位于Meteor.methods
,通过从客户端调用Meteor.call('createParties')
在服务器和客户端运行。在客户端上它不会插入任何数据,但服务器上运行的方法将插入该方。
Meteors allow
和deny
规则直接控制来自客户端的内容,不适用于在服务器端运行的任何内容。