作者whitefur (白毛)
看板MacDev
標題[問題] CoreData relationship predicate
時間Thu Nov 21 10:55:18 2013
現有一個Entity為CompletdFrame
它有一個to-many relationship為peopleRead
欲fetch出 peopleRead個數為0的CompletedFrame
NSFetchRequest *fr = [NSFetchRequest fetchRequestWithEntityName:@"CompletedFrame"];
//只fetch peopleRead個數為0的CompletedFrame
fr.predicate = [NSPredicate predicateWithFormat:@"peopleRead.@count == 0"];
NSArray *framesIHaveNotRead = [_appDelegate.managedObjectContext executeFetchRequest:fr error:&error];
但是把framesIHaveNotRead印出來
卻有peopleRead個數不為0的CompletedFrame
是因為predicate不能針對relationship嗎?
<CompletedFrame: 0x1427c750> (entity: CompletedFrame; id: 0x1427ab00 <x-coredata://4FF961E4-8C79-488A-BB14-7A640F28A095/CompletedFrame/p7> ; data: {
fid = e9f527cc7a;
order = 0;
peopleRead = (
"0xc8726d0 <x-coredata://4FF961E4-8C79-488A-BB14-7A640F28A095/Friend/p1
);
readIconHidden = 0;
receiver = "0x14271710 <x-coredata://4FF961E4-8C79-488A-BB14-7A640F28A095/Receiver/p6>";
sender = "0x1267d170 <x-coredata://4FF961E4-8C79-488A-BB14-7A640F28A095/Friend/p4>";
sendingStatus = 2;
stickerTexts = (
"0x1827a870 <x-coredata://4FF961E4-8C79-488A-BB14-7A640F28A095/CompletedStickerText/p7>"
);
timestamp = "2013-11-21 02:35:08 +0000";
type = 1;
works = "<relationship fault: 0xc879e10 'works'>";
})
)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.160.26.33
→ uranusjr:1-n 還是 n-n?我記得 n-n 會有差 11/21 11:35
→ whitefur:1-N, No reverse 11/21 11:47
→ whitefur:原來是no reverse的問題, 要雙向的資料才不會異常 11/21 19:36