0

開いているすべての友達のリクエストを表示したい PFQueryTableView があります。標準列と「from」、「to」、および「requestStatus」列を持つFollowという名前の解析クラスがあります。「from」と「to」は PFUser へのポインタです。ここで、現在のユーザーに友達リクエストを送信したすべてのユーザーを照会します (queryForTable 内)。その後、セルの titleLabel に、私を追加したユーザーのユーザー名を表示させたいと思います。次のコードが示すように試してみましたが、常にエラーが発生しますか?! 最初の print() が機能し、PFUser: 0x7f9e6d809c30、objectId: 7SIxgfO00Z、localId: (null) が表示されます。2 番目の print(requestingUser.username) は常にアプリをクラッシュさせます。テーブルに表示するユーザー名を取得するにはどうすればよいですか?

 override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath, object: PFObject?) -> PFTableViewCell? {

    let cell = tableView.dequeueReusableCellWithIdentifier("newFriendsCell", forIndexPath: indexPath) as! newFriendsCell

    var requestingUser = object?.objectForKey("from") as! PFUser
    print(requestingUser)
    //print(requestingUser.username)


    return cell
}
4

2 に答える 2

0

これを解決する正しい方法は、追加することです

query.includeKey("from")

最初のクエリに。

君の

var requestingUser = object?.objectForKey("from") as! PFUser

値を持つようになります。

于 2015-12-25T23:56:29.113 に答える
0

ユーザー名にアクセスする前に、ユーザーを取得する必要があります。

requestingUser.fetchInBackgroundWithBlock({ (obj: PFObject?, error: NSError?) in
    let user = obj as! PFUser
    print(user.username)
})
于 2015-12-25T21:26:04.303 に答える