我是SWIFT編程新手,想要做一個簡單的應用來學習如何使用核心數據並將其綁定到應用中。我已經看過大量的例子,但都看起來很老了。我在XCode 9工作。如何將我的陣列控制器綁定到我的核心數據模型?
我開始使用Core Data的MacOS Cocoa應用程序。我有一個名爲「Workout」的簡單實體,包含4個屬性date,seconds,sport和rpe。
然後我在視圖控制器場景下添加了一個數組控制器。我添加了一個將數組控制器設置爲數據源的表視圖。我添加了按鈕來添加和刪除鏈接到陣列控制器添加和刪除方法。
我想我現在需要做的就是將數組控制器綁定到我的核心數據模型的managedObjectContext。這可以在AppDelegate中找到。但是,當我選擇陣列控制器並轉到綁定並選擇參數時,唯一要綁定的選項是「視圖控制器」和「共享用戶默認控制器」。我選擇了視圖控制器,但無法找出模型關鍵路徑來鏈接到我的數據模型。
我覺得我必須錯過一些明顯的東西。我覺得必須有一種方法來綁定到AppDelegate或從視圖控制器的模型關鍵路徑,但我無法弄清楚。任何幫助非常感謝。
感謝您的快速響應。我把下面的代碼放在視圖控制器中,因爲我的AppDelegate沒有managedObjectContext參數:required init?(coder:NSCoder){self.managedObjectContext =(NSApp.delegate as!AppDelegate).persistentContainer.newBackgroundContext() super。 init(編碼器:編碼器) }。仍然收到錯誤:[ valueForUndefinedKey:]:此類不是關鍵字managedObjectContext的編碼兼容的值。 –
我更新了答案,以考慮「NSPersistentContainer」語法並修復KVC問題 – vadian
謝謝。多數民衆贊成在幫助我,因爲我使用.newBackgroundContext(),而不是.viewContext –