2015-09-03 40 views
0

我對錶格有以下查詢。pfquerytableview只能從指針獲取部分數據

override func queryForTable() -> PFQuery { 

    var query = PFQuery(className: "Posts") 
    query.orderByDescending("createdAt") 
    var user = PFUser.currentUser()! 
    query.whereKey("createdByUser", equalTo: user) 
    return query 
} 

cellForRowAtIndexPath方法,我設法是在列存儲的指針中的對象bellongsToStyle

if let object = object?["bellongsToStyle"] as? PFObject { 

     styleObject = object 

     println("BELLONGS TO STYLE- \(styleObject)") 
    } 

以上我對打印輸出來這樣的,到目前爲止,我得到的對象...

BELLONGS樣式 - 樣式:0x7fdcd3c04d20,對象ID:G29f9Wfqj5, LOCALID:(空)

但是,對象Styles中還有另一列,此列被稱爲description。不幸的是,我一直無法獲得description中的數據。我可以得到的objectId,createAt等...

如果我嘗試這樣的東西來檢索description內的對象,我什麼也得不到。

if let object = object?["bellongsToStyle"] as? PFObject { 

    styleObject = object 

    styleString = styleObject.objectForKey("description") as! String 

} 

我假設當你用指針檢索一個對象時,指針內的所有數據都帶有它,不是嗎?爲什麼在我的情況下,我只是獲得這個對象的部分?

我可以發送另一個查詢來獲取整個指針對象作爲最後一個資源,但不認爲這是正確的路要走。

回答

1

默認情況下,對象上的查詢將不會檢索比第一層數據更遠的任何數據。但是,您可以獲取指針的基本屬性 - objectId,createdAt。這是記錄的行爲。

如果您希望您的查詢也返回指針對象的完整詳細信息,則需要使用方法PFQuery,這將擴展您的查詢以獲取定義的對象。

var query = PFQuery(className: "Posts") 
query.includeKey("belongToStyle") //will fetch style object 

現在,您將有權訪問Posts對象和Style對象。

+0

謝謝!有效! – GuiSoySauce