我是Parse的初学者。我以前一直在使用django和django休息框架。我最近开始研究解析,我很喜欢它,但是我脑子里有一些混乱,我无法通过阅读文档来解决。
我想限制对对象的某些属性(/字段)的访问,而不是Parse Documentation
中描述的整个对象例如我有
user1 = {
name: "a",
...
}
和
user2 = {
name: "b",
...
}
并且有一个对象
pet = {
type: "Cat",
name: "abc",
hungry: true,
}
现在我需要一个设置,其中“user1”对象只能访问对象“pet”的“type”和“name”属性,而“user2”可以访问“pet”的所有三个属性。
如何在Parse中添加这些属性级别权限?我希望我明确指出。
答案 0 :(得分:2)
ACL是最具体的控制手段,它只适用于对象级别。在对象中,您可以通过应用程序逻辑强制执行,或将对象分解为多个部分......
Pet = { name: "Toonces",
type: "Cat",
restrictedPet:<pointer to RestrictedPet>,
ACL: everyone }
RestrictedPet = { hungry: true,
canDriveACar: true,
ACL: user2 }
在查询Pet时(例如,在JS中),您可以无条件地说:
var petQuery = new Parse.Query("Pet");
petQuery.include("restrictedPet");
petQuery.first(then(function(pet) {
if (pet.restrictedPet) {
// when user2 is running, she will see restricted attributes here
console.log("Can my pet drive? " + pet.restrictedPet.canDriveACar);
}
// the remainder of the attributes are visible here, to all
});