已经找了好几个小时的解决方案了,而且几乎没什么好运气。我只是没有看到太多关于Parse Config的文档。至少有解决办法,因为我尝试了我能找到的一切。
因此,基本上,当某人将状态为“拒绝”的对象保存时,我试图设置默认图片。
它开始于我看这个:Set default profile picture for parse signup
这就是我得到的。
//Accepts/denies picture request
Parse.Cloud.afterSave("Requests", function(request) {
var toUserId = request.object.get("to").id;
var fromUserId = request.object.get("from").id;
var toUser = null;
var fromUser = null;
var status = request.object.get("status");
if (status === "accepted") {
.....
} else if (status === "denied") {
Parse.Config.get().then(function(config) {
request.object.set('photo', config.get("denied"));
}).then(function() {
console.log('Success: Denied photo set.');
}, function(error) {
console.log('error: denied photo not set');
});
} else if (status === "waiting") {
....
}
});我每次都很成功,但作为照片文件,我什么也得不到。我被困住了,不知道这里还能做什么。该状态更改为拒绝正确,但我没有任何东西显示为一个文件在照片点,保持为未定义。
I2015-08-24T01:54:09.837Z]v46 after_save triggered for Requests for user oE3FhNfyWW:
Input: {"object":{"createdAt":"2015-08-24T01:54:03.398Z","from":{"__type":"Pointer","className":"_User","objectId":"odv4R9OWso"},"objectId":"InB8Iods8U","status":"denied","to":{"__type":"Pointer","className":"_User","objectId":"oE3FhNfyWW"},"updatedAt":"2015-08-24T01:54:09.834Z"}}
Result: Success
I2015-08-24T01:54:09.973Z]Success: Denied photo set.发布于 2015-08-24 03:22:06
我注意到代码中没有提到request.object.save(),这可能解释了为什么在稍后检查时不会更改对象。
但是保存似乎很奇怪,因为这个函数是在保存之后运行的。这要么是浪费,要么是无穷无尽的。由于目标是修改request.object (刚刚保存的对象),那么在beforeSave()上执行此操作。
记住在response.success()或.error()的末尾调用beforeSave()。
https://stackoverflow.com/questions/32173660
复制相似问题