无法使用whereKey为textDidChange搜索两个字符串对象

时间:2015-01-01 16:32:29

标签: ios uitableview swift uisearchbar

我有一个tableView我正在从Parse加载我的数据。现在我想使用parse来显示searchBar.text的搜索结果。我已经获得了我想要搜索的名字和姓氏。问题是我不知道如何查询类中的搜索2对象并在{{1}中显示已过滤的匹配项}。它完全适用于一个对象。

我试图做2个whereKey方法但是失败了,它只会出现对象的第一个字母开头的单元格;例如:John Johnsen

希望我明白我的问题。

更新2:

tableView

1 个答案:

答案 0 :(得分:1)

问题在于您正在搜索两者的要求 必须包含字符串才能获得结果。您需要合并两个PFQuery个 - 实例 - 这样可以在voornaamachternaam中为您提供结果,而不是AND。

var firstName = PFQuery(className: "Newfamilie")
firstName.limit = 200
firstName.orderByAscending("achternaam")
firstName.whereKey("voornaam", containsString: name)
var lastName = PFQuery(className: "Newfamilie")
lastName.limit = 200
lastName.orderByAscending("achternaam")
lastName.whereKey("achternaam", containsString: name)

var query = PFQuery.orQueryWithSubqueries([firstName, lastName])
query.findObjectsInBackgroundWithBlock {
    (results: [AnyObject]!, error: NSError!) -> Void in
    if error == nil {
        // Results will be data containing the string "name" in "voornaam" OR "achternaam"
        for object in objects{
            let naam:PFObject = object as PFObject
            self.timeLineData.addObject(naam)
        }

        self.tableView.reloadData()

        println("\(self.timeLineData.count)")
    }
}