質問: 新しい外部ストレージフラグを使用してコアデータにUIImageを格納する 私は、コアデータにUIImageを格納することについて、[ここにはありますが、それはpre-ios5でした。外部ストレージフラグが作成されたので、別のエンティティとして、またはディスク上にUIImageを直接エンティティに格納することをお勧めしますか?](https://stackoverflow.com/questions/2573072/coredata-store-images-to-db-or-not/2573113 #2573113 ) Here is a source explaining the external storage option.
回答: iOS 5.0のコアデータリリースノート > 有効にすると、Core Dataは以下の場合にヒューリスティックに値ごとに決定します。 > データをデータベースに直接保存するか、URIを > それはあなたのために管理する別のファイル。あなたは > このオプションを使用する場合、バイナリデータプロパティの内容。 > > そしてあなたのリンク外部バイナリデータから、ヒューリスティックはそうであるようです > 1MBより小さいオブジェクトはデータベースに格納されます。にとって > より大きいオブジェクト、外部ファイルが作成され、データベース > それへの参照を保存するだけです。 > > So the following advice is still valid: CoreData : store images to DB or not? > > * < 100kb store in the same table as the relevant data > * < 1mb store in a separate table attached via a relationship to avoid loading unnecessarily > * > > > 1mb store on disk and reference it inside of Core Data > > > > > > > > > The flag sets Core Data to follow that advice and automatically store images >1MB as a separate disk file.