Основные данные отношения один ко многим: выбор конкретных связанных объектов - PullRequest
2 голосов
/ 29 ноября 2011

У меня есть 2 объекта: Train и Station

Каждый поезд останавливается на нескольких станциях, т.е. Train <--->> Station.Список станций, на которых останавливается поезд, отличается от списка станций, на которых останавливается другой поезд.

Как правильно сохранить и извлечь список станций для определенного поезда?

Спасибо

1 Ответ

1 голос
/ 29 ноября 2011

Делает ли это:

Train <--->> Station

означает, что у вас есть отношения один ко многим? Если это так, он не работает, если только один поезд не может остановиться на каждой станции. То, что я хотел бы сделать, это создать третью сущность, назовите ее «стоп» с двумя отношениями: много к одному до Train и много к одному до Station. Это будет выглядеть примерно так:

+-----+       +-------+
|Train|       |Stop   |        +-------+
+-----+       +-------+        |Station|
|stops|<---->>|train  |        +-------+
+-----+       |station|<<----->|stops  |
              +-------+        +-------+

Чтобы найти все станции, на которых останавливается конкретный поезд, просто посмотрите на свойство stops Train, которое будет NSSet из Stop объектов, каждый из которых имеет свойство, которое является станцией поезд останавливается у.

Чтобы добавить новые остановки, просто создайте новый объект Stop и соответственно установите его свойства train и station.

...