作者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
1F:→ uranusjr:1-n 还是 n-n?我记得 n-n 会有差 11/21 11:35
2F:→ whitefur:1-N, No reverse 11/21 11:47
3F:→ whitefur:原来是no reverse的问题, 要双向的资料才不会异常 11/21 19:36