我假設你讀過this tutorial。
CoreData使用一種稱爲「錯誤」的機制來減少應用程序的內存使用量。 從蘋果公司的docs:
「的故障是代表尚未完全實現一個管理對象,或表示的關係的集合對象的佔位符對象」
這意味着,當你閱讀一個來自CoreData的實體,它不會讀取整個對象圖來填充這個實體。
就你而言,如果你閱讀了「發佈」實體,它將不會閱讀與該帖子相關的所有評論。即使您使用StackMob作爲DataStore,情況也是如此。
我做了一個非常小的項目只是爲了測試這個,這就是我得到的。通過使用嗅探器查爾斯我能夠看到提取的請求/響應。 
這裏是我使用的查詢:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Post" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
[self.managedObjectContext executeFetchRequest:fetchRequest onSuccess:^(NSArray *results) {
for (NSManagedObject *managedObject in results) {
NSArray *comments = [managedObject valueForKey:@"comments"];
NSLog(@"Post comments: %d", comments.count);
}
} onFailure:^(NSError *error) {
NSLog(@"Error fetching: %@", error);
}];
這裏是我得到的迴應(使用查爾斯)
[
{
"post_id": "85FC22A1-92ED-484B-9B52-78CBFE464E5D",
"text": "Post1",
"lastmoddate": 1370916620273,
"createddate": 1370915371016,
"comments": [
"5F421C86-F7E7-4BAD-AB21-F056EB7D9451",
"C1CD96E2-856A-43F0-A71D-09CF14732630",
"BAD9F652-C181-4AA1-8717-05DD5B2CA54E",
"AC7D869B-A2BD-4181-8DCF-21C8E127540F",
"2D1A1C80-9A80-48AE-819D-675851EA17D6"
]
},
{
"post_id": "8A84BE1B-6ECE-4C49-B706-7981490C5C2E",
"text": "Post2",
"lastmoddate": 1370916678114,
"createddate": 1370915379347,
"comments": [
"3C001706-2D91-4183-9A07-33D77D5AB307",
"E7DC3A89-2C3D-4510-83E5-BE13A9E626CF",
"2874B59C-781B-4605-97C7-E4EF7965AF4E"
]
},
{
"post_id": "13E60590-E4E7-4012-A3E2-2F0339498D94",
"text": "Post3",
"lastmoddate": 1370916750434,
"createddate": 1370915398649,
"comments": [
"AEA3E5E3-E32E-4DAA-A649-6D8DE02FB9B2",
"DFCBD7E2-9360-4221-99DB-1DE2EE5590CE",
"484E6832-3873-4655-A6C1-0303A42127D9",
"B2316F8B-0AAF-451F-A91C-9E8B4657B1A5"
]
}
]
你可以從響應看到,所有的「註釋「數組中有存儲在StackMob中的註釋的」Id「,但它沒有實際的註釋。
希望這會有所幫助!
我依賴。你會使用CoreData嗎? – LuisCien
是的,我會通過stackmobs使用CoreData ios sdk –
好的,我會盡快發佈答案。 – LuisCien