總之,我正在尋找正確的謂詞格式來索引對象的字典屬性。關鍵字路徑爲謂詞中的對象的字典屬性的元素?
我有一個myObject實例數組,每個都有一個屬性CPDictionary(NSMutableDictionary)extAttributes,我試圖允許基於extAttributes中的值進行過濾。我正在定義我的謂詞如下
[CPPredicate predicateWithFormat:@"extAttributes[%K] like[c] %@",key,val]
我不知道什麼是正確的鍵路徑會是這樣。閱讀關於NSPredicate的文檔,似乎「extAttributes [%k]」可能是數組索引,而不是字典。我已經嘗試了幾種選擇,這是唯一一個不會出錯的選擇。在檢查結果對象時,謂詞對象中的表達式看起來是正確的。但是,它沒有預期的結果。
我通過實施'解決了這個 - (ID)valueForUndefinedKey:(ID)key'上myObject的。 ' - (id)valueForUndefinedKey:(id)key {ret = [extAttributes objectForKey:key]; return ret; } ' 然後它就是'[CPPredicate predicateWithFormat:@「%K like [c]%@」,key,val];' – jlujan
這是一個破解。不要這樣做。使用關鍵路徑。 – jlehr
這是它的一個副作用,它已經實現了將隨機列添加到表視圖。正確的關鍵路徑是什麼? – jlujan