我想創建一個OS X應用程序,用戶可以在其中編輯類似待辦事項列表的項目 - 每個項目都有文本,狀態(完成/待辦事項),創建日期和其他一些數據。待辦事項列表的項目也與其他實體有關係。關係數據/待辦事項列表的NSDocument?
我爲此創建了一個使用核心數據數據模型的iOS應用程序...現在我想創建一個OS X應用程序並進行同步。
我是新來的OS X開發,只是偶然發現NSDocument,並想知道這是否可用。我只是希望用戶看到類似於Excel表格的列表並且可以對其進行編輯。我發現一些例子只存儲一個字符串,例如https://developer.apple.com/library/mac/documentation/DataManagement/Conceptual/DocBasedAppProgrammingGuideForOSX/ManagingLifecycle/ManagingLifecycle.html或本教程http://www.raywenderlich.com/12779/icloud-and-uidocument-beyond-the-basics-part-1
還有NSPersistentDocument與核心數據一起工作,我認爲這是我必須嘗試的。
但是一般來說,使用NSDocument作爲我的待辦事項清單有什麼好處嗎?一個可能是撤消功能,但我不確定這是否適用。任何建議?
我也不確定是否必須爲每個待辦事項使用一個文檔,或者將它們全部加載到一個文檔中,並且如果此功能與表格視圖正確匹配...也許在待辦事項應用程序中,我永遠不會獲得數百的條目,但主要是我可以。我可以分頁等嗎? 謝謝!
編輯:我剛剛專門讀了Document-based application, or not?「關鍵問題是獨立性,如果應用程序模型中的所有對象都是相關的,那麼不需要管理獨立文檔。不知道如何將其應用於我的模型...這是關係。一些1:1和1:n的關係。這是否意味着我的所有物體都是相關的?還是我仍然可以把它們當作「獨立」的文件......?
我有多個待辦事項列表。還有一些其他的「文件」引用了這些列表中出現的個別待辦事項。我希望用戶能夠編輯類似於電子表格的每個列表。問題是,我需要使用核心數據存儲所有內容,因爲我想與iOS應用程序同步,該應用程序僅使用核心數據而非文檔,並且想要使用完全相同的(核心)數據模型。還在使用文件有益嗎?據我所知,可以使用核心數據作爲存儲,所以至少可以。 – Ixx
我更新了我的答案,以回答您評論中的問題。 –
這是很多有用的信息,謝謝(+1)!這聽起來像我不需要,因爲我不想讓用戶清楚我的列表是「文檔」(打開/保存等)。認爲它可能是一個內在的概念,對用戶是不可見的。另外,我沒有添加任何與iOS應用相關的文檔,因爲那時我不知道它......也許我會在方便時添加它。但是,我仍然讀到,即使不使用文檔功能,UIManagedDocument也可以方便地管理核心數據堆棧,並且還可以幫助iCloud,以防將來支持這種情況... – Ixx