2
我有一個包含RLMObjects的tableView,並且想要搜索包含特定RLMObject的行。 鑄造RLMResult對象到其原始類型後,它是不一樣的,作爲初始對象:在Realm Cocoa中RLMObjects未被識別爲相同
// ... adding a todoA with !isCompleted to defaultRealm()
var firstItem = Todo.objectsWhere("isCompleted == false")[0] as! ToDo
if firstItem == todoA {
// todoA is != firstItem even-though they should be the same object
}
我如何可以比較兩個RLMObjects,而無需實現配置的PrimaryKey?
'isEqualToObject'仍然沒有給出正確的結果。我可以以某種方式訪問計算(內部)primaryKey並比較它們嗎? –
isEqualToObject將使用這些相等語義:https://github.com/realm/realm-cocoa/blob/8a49cab247de5005e328cf486fe85fbf13d3f1cf/Realm/RLMObjectBase.mm#L279-L303。如果你想要不同的語義,你可以自由地這樣做。 – jpsim
'(o1 == o2)'即使它是同一個對象也不會給出'true'。似乎將'o1'作爲RLMResult並將其轉換爲與原始文件不同的身份。有沒有什麼辦法可以讓primaryKey自己實現呢?不想爲自己管理對象的唯一鍵,但讓它們可以啓用比較。 –