2013-04-30 25 views
1

我在iOS編程和核心數據方面比較新,所以請原諒我,如果這是一個愚蠢的問題。在我的項目中,我有兩個實體。實體(1)被命名爲「醫生」,實體(2)是「患者」。 Doctor與Patient之間的關係被命名爲「患者」。反面名爲「醫生」。我與醫生之間有一對多的關係。這些實體已被分類。我有根視圖控制器顯示醫生名稱。我希望能夠選擇一位醫生的細胞,並將他的患者顯示在segued視圖控制器上。他的患者被包含在NSSet中。我被困在這裏。我是否在segue代碼中傳遞NSSet,還是在提取請求中使用謂詞來僅提取適用的患者姓名?任何你可以提供的代碼示例將不勝感激。如何正確編寫核心數據與NSSet進行深入研究

回答

1

只要通過Doctor對象獲得當用戶輕敲細胞到您的細節控制器。然後在詳細控制器中使用doctor.patients(NSSet)。這是最簡單的選項,如果不對數據進行任何更改,它將很好地工作。您可能會以表格的形式顯示患者,因此您需要使用NSSortDescriptor在顯示患者之前組織患者(然後他們將排列在陣列中,並使用objectAtIndex:)。

如果您要更改數據,它仍然可以工作,但您需要以某種方式瞭解有關更改,以便您可以更新UI。

如果您已經有一個提取的結果控制器,那很好,並且會監視您的更改。在這種情況下使用doctor在謂詞格式:

[NSPredicate predicateWithFormat:@"doctor = %@", self.doctor]; 

無論哪種方式,醫生對象傳遞給新的視圖控制器。

+0

感謝您的快速響應。需要澄清一些情況。對於第二個表視圖控制器,是否需要另一個FRC用於第二個視圖控制器,或者只是從第一個視圖控制器傳遞參考? – user2076367 2013-05-01 12:42:30

+0

每個視圖控制器都有它自己的FRC。第一個是取病人,第二個取病人。 – Wain 2013-05-01 13:08:00

+0

非常感謝。你一直在幫助很大。 – user2076367 2013-05-01 13:24:26