2017-02-13 87 views
0

我想過濾來自領域數據庫的對象。我有屬性itemIdForDateOrder這是字符串(看起來是這樣的:11e6-eef3-09306910-baa7-417b3207abf6),我有沒有問題,該屬性排序:領域 - 過濾器對象大於字符串屬性

realm.objects(ItemInfo.self).sorted(byKeyPath: "itemIdForDateOrder", ascending: false) 

問題是,我想通過這個屬性來過濾對象,我想具有此參數的對象更大。我斷言的

部分:

if let item = newerThan { 
    formatString += " AND itemIdForDateOrder > '" + item.itemIdForDateOrder + "'" 
} 

但是當我用它,我得到異常:

終止應用程序由於未捕獲的異常「無效的操作類型」, 原因:「操作員」> '不支持字符串類型'

但是,當我可以按排序使用我的屬性時,比較正在處理字符串類型。那麼有沒有辦法通過這個屬性來過濾呢?或者我必須獲取所有對象,然後過濾它們(而不是通過領域謂詞過濾器)。由於

回答

0

由於錯誤稱,境界的查詢引擎目前不支持使用不平等的過濾字符串屬性。我建議filing an enhancement request against Realm要求添加這樣的支持,然後在Realm外執行過濾(即將對象收集到數組中然後過濾數組)。

+0

感謝您的支持。我在Realm之外創建瞭解決方案。只是想知道Realm有沒有辦法。現在沒有,所以我填寫增強請求。 –