所以我在正確解析使用下面的代碼設置我的關係:Parse.com獲取用戶喜歡的對象
var user = PFUser.currentUser() var relation = user.relationForKey("likes") relation.addObject(self.post) user.saveInBackgroundWithBlock({ (Bool, error) -> Void in println("user likes this post") // Used for tracking in the PFTableCell for UI parts self.userLikes = true })
當視圖加載,我需要更改按鈕喜歡和顏色等我想讓所有喜歡這個特定的職位的用戶,但無法弄清楚查詢?它會給我一些其他有用的信息(例如,我可以顯示喜歡這個帖子的人的用戶名)。
作爲一種變通方法,我可以做讓所有用戶喜歡的職位:
var user = PFUser.currentUser()
var relation = user.relationForKey("likes")
relation.query().findObjectsInBackgroundWithBlock {
(objects: [AnyObject]!, error: NSError!) -> Void in
if error != nil {
// There was an error
println(error)
} else {
// objects has all the Posts the current user liked and do something.
println(objects)
}
}
但是這不是我後?我使用Swift和Parse SDK,但很高興在Obj C中有答案,我會翻譯。解析文檔的建議是錯誤的:https://www.parse.com/docs/ios_guide#objects-pointers/iOS我可以存儲類似的帖子而不是用戶,但這意味着我必須打開訪問權限,這是一個不是沒有的帖子
我的數據庫結構很好,我有Post對象和User對象。問題是,當我對關係object.relationForKey(「likes」)做一個relation.query()時,它返回null(大概是因爲Posts不喜歡用戶)。我遵循了parse.com文檔,但是他們的一個教程建議在帖子上設置喜歡關係(即Post likesBy User)。然而,爲了做到這一點,我相信所有的帖子都需要公開閱讀寫入權限,而我只希望他們擁有公開閱讀權限(當然除外創建它的用戶) – ExoticChimp 2015-03-19 01:26:00
本質上,我設置成功保存關係USER已經開始喜歡POST。現在我想要的是能夠檢索到反例,即所有那些誰喜歡那個帖子 – ExoticChimp 2015-03-19 01:27:30
我得到的問題。爲了更新喜歡的關係,你需要在帖子上寫入權限。不幸的是,Parse不允許你設置按字段讀/寫訪問。我真的不認爲給Post留下了訪問權限,但如果你這麼想的話,你可以創建兩種不同類型的Post對象 - Post和PostDetail。 Post有一個postDetail指針。帖子是隻讀的,除了海報,但PostDetail是每個人都可以寫的。 PostDetail包含喜歡的關係。 – 2015-03-19 01:31:17