2010-10-11 107 views
0

我對核心數據相當陌生我已經閱讀了一些關於Apples dev站點&的文章,現在在將它與一個實體結合使用時有點舒適。CoreData中的關係

現在我正在開發一個向用戶推薦食譜的應用程序。

的datadesign有點像這個我有這些實體

項目

茶水

&

配方

關係如下:

項目很多茶水

項目很多配方

的邏輯是獲得從儲藏室&項目進行數值在配方&對它們進行比較,然後建議用戶配方。

我對如何去解決這個問題有點困惑。 我的數據設計好嗎。如果遇到......我需要如何改變它? &將訪問食品室對象託管實例自動從物品表中獲取相應的物品...? &同樣,當我訪問食譜時,餐具室會被取出......?

評論,建議,指向coredata學習資源將高度讚賞。

感謝

回答

1

您的數據模型應該反映您嘗試模擬的真實世界對象,事件或條件。

在這種情況下,它聽起來像是你在模擬一個廚房,只有一個食品室,食品室中有很多物品,然後是一本使用這些物品的食譜書。因此,在僞代碼,對象模型應該是這個樣子:

Item{ 
    pantry<<-->Pantry.items 
    recipies<<-->>Recipie.items 
} 

Pantry{ 
    items<->>Item.pantry 
} 

Recipe{ 
    items<<-->>Recipie 
} 

注意,該項目以配方的關係是一對多和多對多因爲同樣的項目可以在許多食譜和許多不同的食譜顯示可以使用相同的項目。