2010-03-26 14 views
9

2 varlığım, Görev ve Listem var. Her görevin "liste" adlı bir Liste nesnesine bire bir ilişkisi vardır ve Görev ile "görevler" olarak adlandırılan bir çok ilişkisi olan Listeyle ters bir ilişki vardır. Temel Veriler - NSor'a çok bağlantıyı filtrelemek için filtrele

Ben belirli bir Listesine ait olan tüm Görev nesneleri almak için bir NSPredicate ile bir getirme isteği kullanmaya çalışıyorum:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"list=%@", theList]; 
[fetchRequest setPredicate:predicate]; 

(burada "theParent" listesi nesnesine bir referanstır). Ancak bu, getirilen nesneler döndürmez. Yüklemeyi çıkarırsam, nesneler döndürülür (böylece var olduklarını ve NSLogging theList ile onunla ilişkili Görev nesneleri olduğunu biliyorum).

Teşekkür

cevap

11

sizin yüklemi basit yazım hatası olabilir mi?

gerçekten ne istiyorum "listesinde ==% @"

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"list == %@", theList]; 
[fetchRequest setPredicate:predicate]; 
+3

"=" ilişkisi özelliği için çalışır ancak varsayalım zaman "listesinde =% @" var. – zsong

+4

kharrison ve/veya @sza: Ne demek istediğini açıklayabilir misin? [NSPredicate belgeleri] (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Predicates/Articles/pSyntax.html#//apple_ref/doc/uid/TP40001795-215832) '= 've' == ', tahmini biçim dizelerinde kullanıldığında% 100 eşdeğerdir. Belgesiz bir fark var mı? – Quuxplusone

İlgili konular