2012-03-16 3 views
0

У меня есть отношение «один ко многим» в моей базовой модели данных. На одно блюдо может быть много продуктов. Я немного затрудняюсь с кодом и задаю несколько вопросов.Основные данные Контекстная проблема

(1) Если я просто хочу создать кучу продуктов и не хочу прикладывать их к еде. Поможет ли эта модель? Например, я хочу создавать продукты Apple, Peach и Pear, но я не хочу, чтобы они были назначены на еду. Должен ли я назначать питание каждой пище?

Food *food = [NSEntityDescription insertNewObjectForEntityForName:@"Food" inManagedObjectContext:self.context]; 
food.name = @"Apple"; 
food.type = @"Fruit"; 

OR 

Meal *meal = [NSEntityDescription insertNewObjectForEntityForName:@"Meal" inManagedObjectContext:self.context]; 

// Create Food (same way as above) 

[meal addFoodsObject: food]; 

(2) Если у меня есть отдельные классы каждый со своим собственным Fetch Controller, делает каждый класс нуждается в их собственный контекст, или я могу поделиться одним из App делегата. Например, один класс отображает все блюда, а другой отображает все продукты.

enter image description here

ответ

2

(1) До тех пор, как ваши отношения отмечены необязательные (по умолчанию) в модели строитель, вы Food объекты не нуждаются в Meal.

(2) Вы можете использовать основной делегат приложения NSManagedObjectContext, если вы не делаете ничего, что нарушало бы ограничение его основного потока. (Который не звучит так, как будто вы делаете ...)

+0

Спасибо, должно быть, происходит что-то еще. Я задал другой вопрос, может быть, ваш опыт поможет вам в этом вопросе. http://stackoverflow.com/questions/9731062/core-data-one-to-many-fetch-data – Vikings

Смежные вопросы