gpt4 book ai didi

javascript - 如何允许不同的更新 - Meteor collection.allow

转载 作者:行者123 更新时间:2023-11-30 17:32:17 25 4
gpt4 key购买 nike

我想允许用户以不止一种方式更新集合。

允许用户更新并进行不同检查的最佳方式是什么?

我想做这样的事情:

Articles.allow({
update: function (userId, doc, fields, modifier) {
if (modifier.$push.savedBy === Meteor.userId()) {
console.log('User is saving an article.');
return true;
}
if (Meteor.userId() && Math.abs(modifier.$inc.score) === 1) {
console.log('User ALLOWED to vote on the article' + doc.title);
return true;
} else {
console.log('User DISALLOWED from updating the article' + doc.title);
return false;
}
}
});

除了写法还有别的方法吗?

最佳答案

我不确定我是否在回答你的问题,但你可以为同一个集合进行多个 allowdeny 回调:

Articles.allow({
update: function(userId, doc, fields, modifier) {
return (modifier.$push != null) && modifier.$push.savedBy === userId;
}
});

Articles.allow({
update: function(userId, doc, fields, modifier) {
return (userId != null) && (modifier.$inc != null) && (Math.abs(modifier.$inc.score) === 1);
}
});

逻辑如下:如果任何 allow 回调返回true,并且none deny回调返回true,则操作成功。

关于javascript - 如何允许不同的更新 - Meteor collection.allow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22752090/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com