SwiftС Oredata谓词返回而没有一个记录

发布于 2025-01-24 05:22:15 字数 782 浏览 2 评论 0原文

这样的问题,在一个屏幕中,我的getCount函数返回例如,

guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else {
      return
    }
    var managedContext = appDelegate.persistentContainer.viewContext
    
      managedContext = appDelegate.persistentContainer.viewContext
     print(getCount(viewContext2:  managedContext)) // 5


func getCount(viewContext2:  NSManagedObjectContext)-> Int{

let fetchRequest: NSFetchRequest<Cart> = Cart.fetchRequest()

fetchRequest.predicate = NSPredicate(format: "real_id == %@","2086" )

do {
let resCart1ById2 =  try  viewContext2.fetch(fetchRequest)
     
    return resCart1ById2.count //   5 
} catch let error as NSError {
    print(error)
}
return -1

}

切换到另一个子屏幕时的5个记录,相同的函数返回4,看不到一个记录 该问题如何解决?

Such a problem that in one screen my getCount function returns for example 5 records

guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else {
      return
    }
    var managedContext = appDelegate.persistentContainer.viewContext
    
      managedContext = appDelegate.persistentContainer.viewContext
     print(getCount(viewContext2:  managedContext)) // 5


func getCount(viewContext2:  NSManagedObjectContext)-> Int{

let fetchRequest: NSFetchRequest<Cart> = Cart.fetchRequest()

fetchRequest.predicate = NSPredicate(format: "real_id == %@","2086" )

do {
let resCart1ById2 =  try  viewContext2.fetch(fetchRequest)
     
    return resCart1ById2.count //   5 
} catch let error as NSError {
    print(error)
}
return -1

}

When switching to another child screen, the same function returns 4, does not see one record
How can the problem be solved?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文