2011-07-06 68 views
1

我有這樣的核心數據關係:我如何模擬核心數據中的這種多對多關係?

Deck <<-->> Cards <-->> Card Defaults

但也:Deck <-->> Card Defaults

我將如何進行建模,這樣我就能夠創建有很多撲克牌,每次只有一個不同默認?我不確定Core Data如何能夠將每個卡片只有一個默認值的事實相關聯。從Deck <<-->> Cards <-->> Card Defaults開始,看起來核心數據會認爲來自卡組的每張卡片可能有很多默認值。

但是,如果我做Cards <--> Card Default,那麼我將無法爲不同的套牌設置不同的卡片默認值。

有什麼我在這裏失蹤?

感謝您的幫助!

+0

您是否使用「 - >」表示一對一關係,「 - >>」表示多對多關係? – TechZen

回答

0

您需要卡與卡片默認值之間的一對一。您還需要Deck和Card Default之間的一對一。這樣,卡片默認與卡座和卡片相關聯。

1

根據經驗,當你發現自己創建一個類似情況的規則:

甲板< < - >>卡 卡< - >>默認 甲板< - >>默認

...這表明您的模型在邏輯上需要兩個其他實體之間的鏈接實體。

我想你需要:

Deck<-->>Default<<-->Card 

這將使用默認的對象涉及各卡與特定的甲板,但只有通過默認適合該甲板。

不要害怕做出多跳關係路徑。核心數據處理非常長的鍵路徑和複雜模型的能力是其強大的優勢。