问题标签 [nspersistentdocument]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - NSInternalInconsistencyException 这个 NSPersistentStoreCoordinator 没有持久存储
我正在初始化我的模型。如果本地数据库不存在,那么我查询我的后端服务器以检索数据并存储在核心数据中(第一个 if 语句)。但是当我尝试保存时出现“NSInternalInconsistencyException 这NSPersistentStoreCoordinator
没有持久存储”[self.gameDB saveToURL:self.gameDB.fileURL forSaveOperation:UIDocumentSaveForOverwriting completionHandler:NULL]
异常(即)
iphone - 核心数据轻量级迁移不起作用
我有一个使用核心数据的应用程序。目前我使用的是 V1.5,在这些版本中,我对核心数据库进行了一些更改。在有人抱怨该应用程序仍然崩溃后,我发现我应该实施Core data lightweight
。现在的问题是,我不再知道我在不同版本中所做的更改。
同样为了处理核心数据,我遵循了斯坦福大学的视频教程。 这里是第13课。
当您查看本教程时,您会发现他无法使用 XCODE 在 appdelegate 中生成的标准代码。我将简要解释他在做什么。
在 deViewWillAppear
我检查是否有托管文档。如果没有,我创建一个。
设置文档后,我调用该UseDocument
函数
然后在 useDocument 我检查文档状态是什么,然后获取并将我的数据保存在核心数据库中。
这就是我将数据提取到数据库中的方式。
我知道这是很多代码,但我想得到一个好的答案,因为我正在寻找这个问题好几天。在我听说轻量级核心数据迁移之前,我的 appdelegate 中没有任何关于核心数据的内容。在研究了轻量级迁移之后,我在我的 appdelegate 中添加了标准的 core-dat 代码,并将其添加到代码中。
现在经过大量代码,我们正在解决实际问题。当我在安装了第一个版本的 iPad 上运行项目时,在将数据插入数据库后出现以下错误。
我希望任何人都可以帮助我解决这个问题。我不是 IOS 开发人员,我很难解决这个问题。
亲切的问候
objective-c - 如何在 NSPersistentDocument 应用程序中设置 Magical Record?
我正在学习开发可可应用程序,但我直接跳到核心数据。好吧,这似乎是编写我想要的应用程序的正确方法。所以,我一直在研究Magical Record,发现这个非常有用的教程解释了如何在 AppDelegate 上设置 Magical Record。
问题是我正在构建一个基于文档的应用程序,所以我有一个上下文,每个上下文都被神奇地设置并通过属性NSPersistentDocument
可供我使用。managedObjectContext
所以,首先,我不知道我是否应该将 MR 连接到这个上下文,或者在我的文档类中覆盖 Core Data 的堆栈创建以使用 MR。
那么如何在这里设置Magical Record呢?
macos - 如何在 NSPersistentDocument 中从 Core Data 预加载数据?
我有一个NSPersistentDocument
给定的核心数据模型等。
我有一个由该文档创建的文件,假设它是preload.xml。它“包含”几个NSManagedObject
s。
我想将这些对象加载到我所有的新文档中,这样当我创建一个新文档时,新文档会自动“拥有”preload.xml 中的“活动”对象。到目前为止,这是我所做的:
我复制
preload.xml
到我的项目中。在
/li>initWithType:error:
方法(创建新文档时调用的方法)中,有以下代码:
这不起作用,因为当我之后尝试将文档保存到时,假设myNewDoc.xml
这个文件是空的,但我所有的新数据都保存到preload.xml
.
我想知道是否需要创建一个新的store
orcontext
或storeCoordinator
其他东西。我从来没有处理过这样的对象,因为我一直使用NSPersistentDocument
.
objective-c - 关闭文档时如何将设置保存到 Core Data
我有一个变化很大的变量,因此我从我的核心数据数据库中取出(它只是一个 int,但它会定期更新)。
我的应用程序是NSPersistentDocument
基于的,当用户关闭文档时,我想将此变量保存到数据库中,以便它持续存在。
我做了以下事情:
这在保存数据方面起作用,当打开一个新文档时,我可以myTempInt
从数据库值中设置。
但是,它引入了一个问题,即文档不再释放 - 似乎self.myDatabase
在文档关闭时引用会创建一个保留,这意味着 ARC 永远不会启动。
有没有更好的地方来做这种不会成为引用计数问题的事情,还是我接近它都错了?
更新:
我一直在考虑这一点,并意识到在文档自动保存时执行此操作要好得多,而不是在文档关闭时执行此操作。我可以使用像“documentWillAutosave”这样的东西吗?
xcode - 是否有适用于 Mac OS X v10.4 的 NSPersistentDocument 核心数据教程的更新版本?
我找到了一个关于 NSPersistentDocument 的教程,它已经过时了。该文档的标题为NSPersistentDocument Core Data Tutorial for Mac OS X v10.4。还有其他更新版本的文档吗?或者,有没有这种教程的替代品?
cocoa - 在 NSPersistentDocument 中何处获取托管对象上下文?
似乎有一些关于将核心数据与基于文档的应用程序一起使用的信息。我有一个在当前文档中运行模式窗口的窗口控制器。用户将数据输入到一个文本字段中,该字段创建一个可变的字符串数组,我想用它来创建模型对象(用于多对多关系),然后将它们保存到核心数据堆栈中。这是我在模态窗口的控制器中使用的方法。
好的,编译器对 self.managedObjectContext 不满意。可以理解,因为这个类没有上下文。我理解它的方式是,对于基于文档的应用程序,您只想使用一个 MOC。我不明白的是如何访问文档的 MOC。苹果的文档有点不清楚。
获取托管对象上下文
在 OS X 中:
在单协调器应用程序中,您可以直接从应用程序委托中获取应用程序的上下文。
在基于文档的应用程序中,您可以直接从文档实例中获取上下文。
我很尴尬地说我不知道这意味着什么。如何从文档实例中获取上下文?它是某种全局变量吗?任何帮助是极大的赞赏。
ios - NSPersistentDocument 和 UIManagedDocument 兼容吗?
我想在 Mac OS X 中创建一个并在 iOS 7 上NSPersistentDocument
将此文档作为 a 阅读。UIManagedDocument
这可能吗?
两种文件格式是否兼容?
谢谢!
macos - 如何停用窗口恢复?
我正在使用 SDK 10.8。
我正在子类NSPersistentDocument
化(但这个问题可能会让人们对子类化感兴趣NSDocument
)并且我想停用窗口恢复。到目前为止,这是我所做的:
问题是当我尝试在我的应用程序中创建一个新文档时,没有显示任何窗口。
停用窗户恢复的正确方法是什么?
nspersistentdocument - 如何确保文档窗口记住它的位置
我正在使用标准的 AppKit NSPersistentDocument 文档库应用程序,并且希望文档的窗口能够记住它的位置并在上次关闭时所在的位置打开。
请注意,在窗口的 IB 中设置自动保存名称将导致所有文档在同一位置打开。我希望文档根据文档文件名记住其位置。
我已经将 NSPersistentDocument 子类化,并且当前在windowControllerDidLoadNib:
函数中设置了自动保存名称。这几乎可以正常工作,除了如果我在不关闭应用程序的情况下重复打开和关闭同一个文档,那么每次它的窗口高度都会增加一点(26 像素),几乎就像它在做级联的事情一样。但是,如果我完全关闭应用程序并重新打开它,那么文档会准确地记住它以前的位置。我做错了什么还是这是一个错误。我是否应该做一些清理工作,以确保每次重新打开窗口时都不会调整窗口大小。
如果我添加以下代码以将 22 像素添加到其高度
然后像这样设置框架- (void)windowControllerDidLoadNib:(NSWindowController *)aController
这个位置似乎被完全保留了。当然 autosavename 只是为了工作。