2012-09-02 50 views
0

我有兩個實體 - 項目標記。項目可以有一個或多個用戶無法編輯的只讀(工廠)標籤,然後可以有一個或多個用戶可以隨時創建的讀寫(用戶)標籤。我想知道如何最好地模擬這個。核心數據:如何建模兩個實體之間的多個一對多

當然我可以只創建UserTagFactoryTag實體,但是這意味着冗餘維持兩個相同的實體。我寧願只有一個單一的標籤實體。

如果我使用項目標籤之間的單一一個一對多的關係,我將有一個NSSet中,將包含只讀和讀寫標籤。這並不理想,因爲我必須在標記上有一個屬性,標識它是隻讀還是讀寫。

我想知道如果有項目標籤之間的這種使用多重關係建模的方式使得兩種標籤保持每個單獨的,即我將擁有userTags的NSSet中和工廠標籤的NSSet?

謝謝。

+0

如何讓'UserTag'成爲'FactoryTag'的子實體? – Rog

回答

1

您可以在相同實體之間設置多個關係。控制從Item拖放到Tag,並在Item中調用該關係factoryTags和Tag中的itemUsingAsFT。讓這一對多。控制從項目拖動到第二次標記,並在Item和itemUsingAsUT inTag中調用此關係userTags。做這個也是很多的。這樣你就可以使用相同的Tag實體保持兩者分離。

+0

太好了,謝謝!我想到了兩種關係,但是我很難弄清楚如何從標籤返回到物品指向相同的事物。但是,它根本不需要。另外,我很可能只會處理我的代碼中關係的Item方面,現在這兩個集合是邏輯的,就像Core Data負責處理反面一樣。 – nick

相關問題