Menggunakan entitas subkelas NSManagedObject di penyimpanan dalam memori dan penyimpanan SQLite

Saya ingin menggunakan satu subkelas NSManagedObject untuk mewakili suatu item. Namun, sering kali, barang yang akan saya wakili bersifat sementara, dan tidak dapat disimpan di penyimpanan tetap. Sepertinya penyimpanan dalam memori adalah pengaturan yang benar.

Namun beberapa kali pengguna dapat memilih untuk 'menyimpan' item, dan oleh karena itu saya ingin item tersebut disimpan ke toko SQLite.

Sepertinya saya membutuhkan dua toko. Apakah saya memerlukan dua konteks? Apakah ada cara yang disarankan untuk memindahkan item dari penyimpanan dalam memori ke penyimpanan persisten yang 'disimpan'? Adakah saran atau masalah lain yang dapat direkomendasikan orang ketika menggabungkan objek terkelola persisten dan non-persisten dari jenis yang sama?


person user366126    schedule 28.06.2010    source sumber


Jawaban (1)


Anda dapat memiliki beberapa toko persisten untuk satu koordinator toko persisten. Gunakan -[NSManagedObjectContext assignObject: toPersistentStore:] untuk memilih penyimpanan mana yang dikaitkan dengan suatu objek. Jadi objek sementara Anda akan ditugaskan ke penyimpanan dalam memori.

person Community    schedule 28.06.2010
comment
+1 Terima kasih Graham, sepertinya ini bagus untuk mengelola toko hanya baca dan toko yang dapat disimpan pengguna dengan relasi. - person pokstad; 22.03.2011