在分析对象查询中包含计算字段
问题描述:
我目前正在为烹饪社交网络开发基于分析服务器的API,特别是在检索食谱的功能上。我希望允许此函数公开计算字段,例如标题字段,它将在语言中选择几个现有(titleFr,titleEn,titleE,...)中的正确标题字符串。 我从另一篇文章中了解到,我应该在Parse.Promise上工作,但我无法找到hack:函数响应仍然只是公开存储的字段。有人知道吗 ?在分析对象查询中包含计算字段
Parse.Cloud.define('getRecipes', function(request, response) {
var lang = getLocale(request); // a homemaid function
var recipes = new Parse.Query("Recipe");
recipes.find().then(function (recipes) {
console.log("Successfully retrieved " + recipes.length + " recipes.");
var recipe = recipes.map(function (recipe) {
recipe.title = recipe.get("title" + lang);
return recipe;
});
return Parse.Promise.when(recipe);
}).then(function (results) {
response.success(results);
}).fail(function(error) {
alert("Error: " + error.code + " " + error.message);
});
});
答
尝试的return recipes.map....
代替var recipe... return Parse.Promise.When(recipe);
由于recipe
实际上不是一个承诺,我不相信它就会等待以同样的方式,在这里。可能会被误解。如果发生查询失败,您可能会错过response.error()
调用。