2009-07-21 15 views
5

के साथ @sum का उपयोग कैसे करें मेरे पास सप्ताह का मॉडल है जिसमें बाल वस्तुओं के रूप में दिन है। सभी संबंधित दिन वस्तुओं तक पहुंचने के लिए सप्ताह मॉडल में "दिन" संबंध संपत्ति है। दिन मॉडल अवधि की संपत्ति है।कोरडाटा

मैं निर्दिष्ट सप्ताह वस्तु के लिए दिन की अवधि का योग कैसे प्राप्त कर सकता हूं? कोड उदाहरण होना अच्छा होगा कि @sum फ़ंक्शन के साथ एक अनुमानित ऑब्जेक्ट कैसे बनाएं।

क्या यह भी संभव है कि "गणना" सप्ताह सप्ताह की अवधि पर अवधि संपत्ति हो, जिसने मूल्य के दौरान संबंधित दिन की अवधि के योग दिया? यह उन समस्याओं के लिए सबसे सुंदर समाधान होगा, लेकिन मुझे विश्वास नहीं है कि कोरडाटा के साथ यह संभव है।

उत्तर

8

यहाँ का एक उदाहरण है कि कैसे आप केवल सप्ताह लगता है जहां दिन की अवधि की राशि से अधिक 100.

NSManagedObjectContext *context = ...; 
NSManagedObjectModel *model = ...; 
NSFetchRequest *fr = [[NSFetchRequest alloc] init]; 
fr.entity = [model.entitiesByName objectForKey:@"Week"]; 

//This predicate will be compiled into pure SQL 
fr.predicate = [NSPredicate predicateWithFormat:@"[email protected] > 100"]; 

NSError *error = nil; 
NSArray *results = [context executeFetchRequest:fr error:&error]; 
if (error) { 
    NSLog(@"ERROR: %@", error); 
} 
NSLog(@"Results: %@", results); 

आप वास्तव में एक समान में गणना संपत्ति को लागू कर सकते है आपकी क्वेरी सेटअप होगा वैसे, बस इसे अपनी सप्ताह इकाई का समर्थन करने वाले एनएसएमएनेज्ड ऑब्जेक्ट सबक्लास में जोड़ें:

- (NSNumber *) duration { 
    return [self valueForKeyPath:@"[email protected]"]; 
} 
संबंधित मुद्दे