我只是想检查我的数据库表中是否有user_id和comment_id,如果它们存在,那么执行x操作或者y操作。 而且,我从用户那里获取运行时的user_id和comment_id。 那么我应该如何使用query.equalTo编写if条件,以便我可以执行各自的操作。 以下是我想要做的代码。
Parse.Cloud.define("voteForComment", function(request, response)
{
var insertVote = Parse.Object.extend("trans_Votes");
var vote = new insertVote();
var query = new Parse.Query("trans_Votes");
if(query.equalTo("user_id",
{
__type: "Pointer",
className: "_User",
objectId: request.params.user_id
})) && (query.equalTo("comment_id",
{ __type: "Pointer",
className: "mst_Comment",
objectId: request.params.comment_id
})); // how to write this two equalTo queries..(its showing error)
{
query.find
({
success : function(rec)
{
X operation here
},
error : function(error)
{
response.error(error);
`}
});
}
else
{
y operation here
}
感谢。
答案 0 :(得分:2)
你的括号有点乱。从equalTo()
语句中删除if
函数调用会留下这段代码线框:
if (...) && (...);
{
...
} else {
...
}
由于语法错误,这不起作用。我们需要稍微改变一下:
if ((...) && (...))
{
...
} else {
...
}
将这些更改应用于您的代码会产生以下结果:
if (query.equalTo("user_id", {
__type: "Pointer",
className: "_User",
objectId: request.params.user_id
}) && query.equalTo("comment_id", {
__type: "Pointer",
className: "mst_Comment",
objectId: request.params.comment_id
})) {
query.find({
success: function(rec) {
X operation here
},
error: function(error) {
response.error(error);
}
});
} else {
y operation here
}
这应该有效。