簡體   English   中英

使用解析將“關注者”列表保存在_User類中

[英]Save “followers” list in _User class using Parse

我正在嘗試此操作,每當我點擊“跟隨”按鈕時,它就會在表格視圖中運行此代碼。

@IBAction func followButtonTapped(sender: UIButton){



    sender.setTitle("unfollow", forState: UIControlState.Normal)

    var followers:PFQuery = PFQuery(className: "_User")
    followers.getObjectInBackgroundWithId(userIds[sender.tag], block: { (objects:PFObject?, error:NSError?) -> Void in

        if error != nil {


        } else if let object = objects {

            object.addUniqueObject(PFUser.currentUser()!.objectId!, forKey: "followers")

            object.saveInBackgroundWithBlock({ (success, error) -> Void in

                if error != nil {


                } else {

                    println("saved")
                }


            })


        }




    })



}

即時通訊收到此錯誤:

Error]: Caught "NSInternalInconsistencyException" with reason "User cannot be saved unless they have been authenticated via logIn or signUp"

我知道這有多遠是因為在更新用戶之前,我們無法更新_User類是當前用戶。所以我想將用戶的所有關注者保存在_User類中。是否可能以某種方式? ?

您確定列跟隨器是一個數組,以便可以向其中添加值嗎? 順便說一句,因為您已經在先檢查是否有錯誤,所以請打印出來。

println("Found an error: \(error!.description)")

編輯:

好吧,現在我有了您打算做的事情。 將當前用戶添加到其他用戶的關注者列。

  1. 您可以將ACL公用保存為Write,然后繼續執行此操作,但這並不是很安全。
  2. 或者,您可以創建另一個類“跟隨”,在其中指定誰跟隨“ fromUser列”和誰跟隨“ toUser列”,這兩個指針均指向_User,這樣,即使您要取消跟隨,您也可以跟蹤跟隨關系。 這樣可以使您的工作更加輕松。

要獲得某人的所有關注者:

let followers = PFQuery(class: "Follow")
followers.whereKey("toUser", equalTo: PFUser.currentUser()!)

要創建,刪除和編輯這些關系,請使用帶有正確的whereKeys的PFQuery。 提示:使用

followers.includeKey("_User")

因此,如果您願意使用關注者數據(例如在表格視圖中顯示的名稱),則可以獲取指針並保存服務器請求。

不應這樣使用Parse Users類,您需要創建該類的抽象並使用該抽象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM