希望Stackoverflow的优秀人士可以帮助您:
我有一个具有以下结构的领域对象:
class GasFile : Object {
@objc dynamic var gasFilename : String = ""
@objc dynamic var gasCategory : String? = ""
override static func primaryKey() -> String? {
return "gasFilename"
}}
以及以下搜索条件:(已损坏!)
func updateSearchResults(for searchController: UISearchController) {
let searchText = searchController.searchBar.text
if searchText == "" {GasFileSearchResults = realm.objects(GasFile.self).sorted(byKeyPath: "gasFilename", ascending: true) }
else {
GasFileSearchResults = realm.objects(GasFile.self).sorted(byKeyPath: "gasFilename", ascending: true).filter("(gasFilename CONTAINS[cd] %@) OR (gasCategory CONTAINS[cd] %@)", searchText!)
}
self.tableView.reloadData()
}
我可以让它与
gasFilename
的一个查询一起使用,但是我认为我围绕'gasFilename'和gasCategory
的多个标准犯了一个错误。 ! 最佳答案
尝试再添加一个searchText!
realm.objects(GasFile.self)
.sorted(byKeyPath: "gasFilename", ascending: true)
.filter("(gasFilename CONTAINS[cd] %@) OR (gasCategory CONTAINS[cd] %@)", searchText!, searchText!)