我想列出用戶可以添加到事件的聯繫人,但是我想過濾結果以便重複顯示。因此,如果我添加了John Doe,他的聯繫人將不會顯示在聯繫人列表中。我對NSPredicate並不熟悉,所以我不確定這是最好的方法還是將Results數組轉換爲更容易處理的東西。什麼是最簡單而有效的方法來檢查領域中的重複結果<>?
0
A
回答
0
這裏是kotlin的例子,但非常接近swift。 你可以做那樣的事情。您可以獲取按名稱過濾的用戶列表,而不是獲取RealmResults。
fun filteredUsers(){
val realm = Realm.getDefaultInstance()
realm.where(UserRealm::class.java)
.findAllAsync()
.asObservable()
.filter { users -> users.isLoaded }
.flatMap { users -> Observable.from(users) }
.filter { user -> !user.name.equals("John Doe") }
.observeOn(AndroidSchedulers.mainThread())
.doOnError { err -> err.printStackTrace() }
.toList()
.subscribe { userList -> print(userList) }
}
而且也是我的文檔中找到更簡單的方法爲迅速:
// Query using a predicate string
var tanDogs = realm.objects(Dog).filter("color = 'tan' AND name BEGINSWITH 'B'")
// Query using an NSPredicate
let predicate = NSPredicate(format: "color = %@ AND name BEGINSWITH %@", "tan", "B")
tanDogs = realm.objects(Dog).filter(predicate)
0
你想要一個不同的查詢,但Realm doesn't support them natively yet。
但是,您可以獲取數據了一個境界,並自己做重複數據刪除,但你失去領域的自動更新Results
類型:
let realm = try! Realm()
let currentUser = realm.objects(User).filter("me == true").first!
let uniqueContactNames = Set(currentUser.contacts.valueForKey("name") as! [String])
詳情請參閱#1103和建議的解決辦法。
相關問題
- 1. 檢查存在ExecuteScalar結果的最有效方法是什麼?
- 2. 在WebStorm上查看結果最簡單的方法是什麼?
- 3. 在Javascript中檢查> =和<=的最佳方法是什麼?
- 4. 用'<br>'取代'\ n'最簡單的方法是什麼?
- 5. 排序EF4 EntityCollection的最簡單方法是什麼?<T>?
- 6. 什麼是* plot * std :: vector <double>的簡單/最簡單的方法?
- 7. 領域查詢 - 領域結果<超類別>
- 8. 什麼是有效簡潔的方式來檢查SQL查詢結果中是否包含DataTable列中的值?
- 9. 創建IEnumerable <T>或ICollection <T>的最簡單和最簡單的方法是什麼?
- 10. 什麼是保持懸停後效果最簡單的方法
- 11. 在Python中檢查重複項的最快方法是什麼?
- 12. 什麼是檢查IQueryable結果集的最佳方法是空
- 13. 簡單的方法來檢查FormatString是否有效?
- 14. 檢查ZXing支持的最簡單方法是什麼?
- 15. 什麼是最簡單的方法來生成有效的x:名稱?
- 16. 在PHP中回顯查詢結果的簡單而有效的方法?
- 17. 在Slick中獲得單一結果的最有效方法是什麼?
- 18. 從SQL查詢中排除可能結果的最有效方法是什麼?
- 19. 檢查號碼重複數字的最快方法是什麼?
- 20. 什麼是最有效的方法來檢查項目是否存在Arraylist?
- 21. 什麼是最簡單的方法來隨機化AS3中的幀的順序而不重複?
- 22. 使用PHP緩存MySQL查詢結果的最簡單方法是什麼?
- 23. 基於查詢結果插入記錄的最簡單方法是什麼?
- 24. 什麼是最有效的JavaScript語法檢查解決方案?
- 25. 運行大量簡單查詢而不重載數據庫的最有效方法是什麼?
- 26. 什麼是最好的方式來填充名單<Object>?
- 27. 什麼是最簡單的方法來重命名DataGridView的列顯示列表<T>?
- 28. 最簡單的方法來查找和刪除重複?
- 29. 簡單的查詢:SortedSet <T>是否有一種簡單的方法來查找中間元素?
- 30. 檢查AzureTable是否有任何數據的最簡單有效的方法?
爲什麼不保存並用primaryKey更新模型如果你不想重複的結果? –
我將結果轉換爲集合,然後使用'exclusiveOrInPlace'從已保存的事件中刪除一組以前使用的聯繫人。我有3組聯繫人添加,以前的聯繫人,和一個結果。這應該是效率問題嗎? – ggworean