NSObject から継承するオブジェクトがあり、それを CoreData に保存したいのですが、タイプ「Transformable」(「id」) の属性を既に作成しているため、プロジェクトをデータベースに追加するときにプロジェクトを直接保存することはできません。例えば:
item.idObject = object;
エラーが発生します。問題は、オブジェクトを ID に変換する必要があることだと思います。どうすればこれを行うことができますか?
NSObject から継承するオブジェクトがあり、それを CoreData に保存したいのですが、タイプ「Transformable」(「id」) の属性を既に作成しているため、プロジェクトをデータベースに追加するときにプロジェクトを直接保存することはできません。例えば:
item.idObject = object;
エラーが発生します。問題は、オブジェクトを ID に変換する必要があることだと思います。どうすればこれを行うことができますか?
属性を変換可能に設定することで、正しい軌道に乗っています。ただし、Core Data が使用できるこのオブジェクトの valueTransformer を記述する必要もあります。
ドキュメントにはさらに多くの情報があります
コア データ プロパティを割り当てる場合、NSString、NSNumber などの特定のタイプのみである可能性があります。関係を割り当てる場合は、別の NSManagedObject インスタンスである必要があります。モデルの一部として保存する場合は、次のことができます。もちろん、任意のタイプの一時的なプロパティがあります。
それで...
@implimentation OurClass
@dynamic someProperty; // core data model property NSNumber, NSString, etc.
@dynamic someRelationship; // core data relationship some other subclass of NSManagedObject
@synthesized someOtherProperty; // can be anything, following normal Objective-C semantics.
@end