2014-12-27 87 views
0

我在遇到以下查詢時遇到了問題。我很確定所有的鍵是正確的,但查詢沒有返回任何對象。問題的線是:Javascript解析查詢

query.equalTo("author", Parse.User.current()); 

如果我把那條線,然後它返回給我一個隨機用戶的對象,但我想這個用戶的對象。如果我離開那條線,我就沒有物體。

var query = new Parse.Query("personalInfoObject"); 
console.log(Parse.User.current().getUsername()); 
query.equalTo("author", Parse.User.current()); 
query.find({ 
success: function(results) { 
    // results is an array of Parse.Object 
    var obj=results[0]; 
    console.log(obj) 

}, 

回答

0

User看起來像一個複雜的物體。如果author是一個簡單的字符串,則該比較將找不到任何內容。我看到你正在將username打印到日誌中,也許這就是你想用於where子句的內容。沒有對象的結構很難知道。

+0

從這個意義上講,這不等於文檔說:equalTo(key,value) 向查詢添加一個約束,該約束要求特定鍵的值等於所提供的值。 – 2014-12-27 15:47:01

+0

如果'User'是一個複雜的對象,我認爲它會使用它的字符串表示來進行比較。我不清楚那會是什麼 - 它可能就是'[Object object]' - 這就是你將比較'author'的'價值'。我嘗試使用與'personalInfoObject'中'author'屬性對應的當前用戶對象的那部分。 – tvanfosson 2014-12-27 15:54:34

+0

@tvanfossen你是正確的我犯了我的數據方案的錯誤。 – 2014-12-27 16:05:06