有些机构可以告诉我在Coredata中一次创建Day实体的最佳方法吗? PS:我知道如何制作笔记应用程序,我可以在DB中插入笔记,但如果不在特定日期插入笔记,那么获取时不会显示日期。
我似乎无法理解如何在核心数据的相关日期中记录笔记?
答案 0 :(得分:0)
好的,所以你应该先将你的实体子类化,这样它们就更容易使用了。然后你可以添加一个函数来返回对象(实体)的数组,这是你的日记。例如
func getData(moc: NSManagedObjectContext) -> [Entity] {
let request: NSFetchRequest<Entity> = Entity.fetchRequest()
do {
let entityData = try moc.fetch(request)
return entityData
} catch {
// Handle errors
}
}
然后,您可以向此方法添加谓词,该谓词返回与您传递谓词的参数匹配的实体内的特定数据。我知道这不包括你的完整问题,但我希望它有所帮助!
答案 1 :(得分:0)
您可以在开始时插入所有日期,方法是选择开始日期,结束日期,然后使用NSCalendar
方法一次从一个方法转到另一个方法。为每个日期添加一个新条目,您已完成。
但这将是一个非常糟糕的设计。在您可能涵盖的每一天中,在持久性商店中创建新条目是没有意义的。最好只存储您实际需要的数据,而不是浪费时间和空间来存储您永远不会使用的数据。
要显示一周或一个月中的每一天或其他任何内容,显示这些日期,请不要依赖Core Data来获取所有可能的日期。在UI涵盖的范围内显示每一天。获取这些日期的每个日记条目。如果日期上有日记条目,请显示它们。如果日期没有日记条目,则显示没有条目的日期。显示特定范围内的每一天都是您的控制器代码的功能。它应该选择日期并询问核心数据这些日期的内容。