2014-02-07 27 views
0

我在將核心數據添加到具有2個主細節表的項目時遇到問題:Master-A,Detail-A; Master-B,Detail-B。 Master-B列出唯一屬於Master-A行的項目。這是從A到B的多對多的關係,以及從B到A的一對一,可選的關係。否則,將使用詳細披露按鈕從主表到詳表。連接2個主細節表的iOS核心數據

我用故事板和展開segues連接表。在嘗試添加核心數據之前,這些表格可以工作,並且我可以爲每個主要細節添加/編輯項目。

我添加了核心數據,可以讓Master-A和Detail-A將數據保存到sqlite文件中。我的問題是將數據添加到Master B文件中,並使用xcdatamodeled文件中設置的關係將數據連接到Master A行。如果我將關係設置爲可選項,則可以存儲B項目的數據,但所有A項目都顯示相同的B次。如果我將關係設置爲非可選,那麼我會收到1570錯誤,指出缺少必需的關係或屬性。

我應該使用CoreDataGeneratedAccessors嗎?或者我應該使用匹配謂詞?要麼 …。

對不起 - 我真的很新,很迷路。我需要一些幫助正確的方向。我更喜歡使用故事板,因爲我對此很新,並且無法看到以編程方式創建視圖控制器會在哪裏解決問題。大多數具有關係的核心數據教程都非常簡單,並且/或者不使用表格。任何幫助將不勝感激。

+0

看看這裏的示例應用程序,他們有一個公司 - >>員工主/關係。您需要設置B arrayController上設置的內容和/或創建B對象時設置其主對象。 http://ossh.com.au/design-and-technology/software-development/sample-library-style-ios-core-data-app-with-icloud-integration/ –

回答

0

這裏有一個相當重大的斷開。核心數據是你的模型,你正在談論視圖控制器。當你將這些概念結合在一起時,你不會以你想的方式影響另一個概念。

視圖控制器顯示模型中的數據。作爲開發人員來定義這種行爲的工作方式,是的,你可以使用故事板。

你的模型是什麼樣的?你可以張貼截圖嗎?

通常,當您在故事板情境中從一個「主」移動到另一個「主」時,您將在-prepareForSegue:identifier:方法中使用依賴注入將所需信息傳遞給下一個視圖控制器以供顯示。結合NSFetchedResultsController的實例將允許您顯示模型中的數據。