0

我是 Swift 新手,我正在尝试查找当前用户位置,然后查询附近的所有用户,然后将它们加载到UITableView我的故事板中。但是,当我构建代码时,我的UITableView(Parse 是我的后端)中没有显示任何数据。我试图研究这个问题并发现了这种使用方式PFQueryTableViewController

PFQueryTableViewController 快速不加载数据

但是,当我这样做时

required init(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
  }

总是返回NSException错误。如何解决该问题或修复以下代码以将我的解析数据返回到我的表格视图中?

import UIKit
import Parse
import ParseUI
import CoreLocation

class MasterTableViewController: PFQueryTableViewController {

var usersLocation: PFGeoPoint? {
    didSet {
        // This will reload the tableview when you set the users location.
        // Handy if you want to keep updating it.
        if (tableView != nil) {
            tableView.reloadData()
        }
    }
}

override func viewDidLoad() {
    super.viewDidLoad()

    PFGeoPoint.geoPointForCurrentLocationInBackground { point, error in
        if error == nil {
            self.usersLocation = point
        }
    }

}

override func queryForTable() -> PFQuery {
    var query = PFQuery(className: "User")
    if let location = usersLocation {
        query.whereKey("location", nearGeoPoint: location)
    }
    query.limit = 10
    return query
}
4

1 回答 1

0

在您的 queryForTable 方法中,您似乎正在尝试查询User类。

从 Parse docs 查询用户有一种特殊的方法:

例子:

var query = PFUser.query()

query.whereKey("gender", equalTo:"female")

var girls = query.findObjects()

https://www.parse.com/docs/ios/guide#users-querying

希望这会有所帮助

于 2015-05-21T06:07:32.120 回答