2010-11-18 20 views
1

İşte sorun şu:CoreData Varlık satırına yeni bir İlişki Ekleme

Projemin 2 varlıkları var. Bunlardan ilki Örgüt, ikincisi ise Markalar. 1 ile Çok arasında bir ilişki var. "Bir Organizasyonun birden fazla Markası olabilir" Her şey bunun için çalışıyor. Organizasyon ve Brandtableview ve bir DetailView ile Tableview.

İstediğim şey, beğendiğim Markalar ile bir Favouritelist'i bağladığım uygulamamıza bir Favoriler Özelliği eklemek. Bu nedenle, "Favourits" öğesini xcdatamodel'e ekledim. Her FavouriteList'in bir adı vardır ve çoktan fazla ilişkiye sahip "Markalar" a bağlanır. "Bir Favouritelist'in birden çok Marka ve EBM'si olabilir" birden çok Favouritelist'te olabilir.

yeni Listesi oluşturmak için bir addToFav Eylem var Markalar DetailView aşağıdaki kodu

currentFav = (favoriten*)[NSEntityDescription insertNewObjectForEntityForName:@"favoriten" inManagedObjectContext:managedObjectContext]; 
[currentFav setName:@"MeineFavoriten"]; [self saveAction]; 

var ve Favouritelist için ilişkiyle Markaları içinde Marka güncellemek istiyorum.

Örnek: bunu yapabilirim nasıl

"Favoriten MeineFavouriten için "XY" adı ile Marka bağla"?

cevap

0

Çok sayıda ilişki kümedir, böylece basit bir setValue aramasını kullanabilirsiniz. Bunun yerine önce bir değişken kümeye sahip olmanız, sete bir nesne eklemeniz ve daha sonra mutasyona uğramış kümeyi değer olarak ayarlamanız gerekir. Eğer Favori listesinden için bir sınıf oluşturursanız

NSMutableSet *favoriteBrands=[aFavoriteList mutableSetValueForKey:@"brands"]; 
[favoriteBrands addObject:aNewBrandObj]; 
[aFavoriteList setValue:favoriteBrands forKey:@"brands"]; 

, size kod üç satırlık yazmak zorunda kalmadan-çok ilişkileri kolayca nesneleri ekleyelim yöntemleri olsun.

İlgili konular