在示例应用程序“parties”中,有一组允许/拒绝规则用于Parties集合。
插入规则如下所示:
同时在方法createParty中,实现了Parties.insert({....}),但这种情况不受应用于Parties集合的规则影响。
有人可以解释一下为什么createParty方法不受规则影响吗?
谢谢。
insert
。Parties.allow({
insert: function (userId, party) {
return false; // no cowboy inserts -- use createParty method
},...
同时在方法createParty中,实现了Parties.insert({....}),但这种情况不受应用于Parties集合的规则影响。
.....
return Parties.insert({
owner: this.userId,
x: options.x,
y: options.y,
title: options.title,
description: options.description,
public: !! options.public,
invited: [],
rsvps: []
});
.....
有人可以解释一下为什么createParty方法不受规则影响吗?
谢谢。
Meteor.methods
仅在服务器上运行的说法。看起来是真的: - Jevgenijs GolojadsMeteor.isServer
中),那么客户端和服务器都将执行该方法调用。您可以通过在createParty
方法顶部添加console.log
来简单地查看这一点。 - David Weldonallow
就可以表示允许。如果你有多个allow
,它们并不会全部生效。如果你想确保一个恶意插入被拒绝,使用deny
。此外,如果你使用了deny
,你必须至少有一个allow
(即使它是return true;
)。 - David Wihl