gpt4 book ai didi

ios - 向 Core Data 托管对象添加 `lastModified` 记录

转载 作者:可可西里 更新时间:2023-11-01 06:10:41 24 4
gpt4 key购买 nike

一个对象需要提交给服务器,我想通过显示 lastModified 日期/时间和 lastSubmitted 日期/时间。

(是的,必须手动提交记录。)

我目前正在监听 NSManagedObjectContextObjectsDidChangeNotification,检查对象的实体是否为 RetailLocation,如果是,则设置其 lastModified 日期/时间(当然,前提是 lastModified 不是唯一被修改的属性)。因为这似乎使撤消管理器非常困惑,所以我使用 performSelector:SOMESEL withObject:retailLocation afterDelay:0.0 来设置 lastModified 属性。

遗憾的是,这几乎更糟:这导致两个操作被添加到撤消堆栈中!

有人可以推荐一种在 Core Data 管理的记录中实现 lastModified 属性的好方法吗?或者,我错过了什么?

最佳答案

如果您不希望修改日期不可撤销,您可以在进行更改之前在 NSUndoManager 上调用 disableUndoRegistration,并在完成后调用 enableUndoRegistration

如果你需要一个,你可以通过在你的 NSManagedObjectContext 上调用 undoManager 来获得一个指向 NSUndoManager 的指针,但是如果你在 iOS 中工作,你应该已经有一个了。

此外,请注意 Apple 建议为此使用 NSManagedObjectContextWillSaveNotification 通知,因为更改不一定会保存。

关于ios - 向 Core Data 托管对象添加 `lastModified` 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15467812/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com