2011-06-26 10 views
21

W jaki sposób zaimplementować pobraną właściwość w Xcode 4?Podstawowe dane Xcode 4: Jak korzystać z przesłanej właściwości utworzonej w edytorze modeli danych

Oto przykład z dwoma podmiotami, książki i strony: enter image description here

I przestrzegać wskazówek tutaj, aby utworzyć właściwość idącą odwołujący się do wartości z jednostki źródłowej przy użyciu zmiennej $ FETCH_SOURCE: http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CoreData/Articles/cdRelationships.html

teraz, kiedy mam to zapisane i wygenerować kod źródłowy uzyskać to:

// Book.h 

#import <Foundation/Foundation.h> 
#import <CoreData/CoreData.h> 

@class Pages; 

@interface Book : NSManagedObject { 
@private 
} 
@property (nonatomic, retain) NSString * title; 
@property (nonatomic, retain) NSNumber * pageCount; 
@property (nonatomic, retain) Pages * pages; 

@end 

i ...

// Book.m 

#import "Book.h" 
#import "Pages.h" 


@implementation Book 
@dynamic title; 
@dynamic pageCount; 
@dynamic pages; 

@end 

Gdzie jest pobrana właściwość "fetchLastPage"? Jak mogę użyć go w kodzie?

+0

FYI, nie jest to rzeczywisty kod pracuję z. Piszę aplikację, w której mam wiele magazynów danych (jeden do odczytu i jeden do danych zapisanych przez użytkownika) i muszę używać pobranych właściwości, ponieważ wiele sklepów nie utrzymuje relacji między sobą: http://developer.apple.com/ biblioteka/mac/dokumentacja/Cocoa/Conceptual/CoreData/Articles/cdRelationships.html # // apple_ref/doc/uid/TP40001857-SW7 – pokstad

Odpowiedz

18

Z tego co czytałem trzeba dodać właściwości pobranych do wygenerowanej klasy siebie używając @dynamic słowa kluczowego

// In your header 
@property (nonatomic, retain) NSArray *fetchLastPage; 

// In your class 
@dynamic fetchLastPage; 
+6

+1 Masz podstawowy pomysł, ale pobrana własność jest zawsze w klasie NSArray . Zmienię twoją odpowiedź, aby to odzwierciedlić. – TechZen

+0

Dodam, że musisz to zrobić ręcznie tylko dlatego, że narzędzia X4 Core Data są poważnie błędne. W poprzednich wersjach automatycznie dodawał definicje fetchedProperty. – TechZen

+0

@TechZen - Powinieneś złożyć zgłoszenie błędu w Apple. – Moshe

Powiązane problemy