核心数据使用一次后<故障>

2024-01-26

我搜索了几个小时但没有找到任何东西

我处于有线状态核心数据

获取对象的方法

func fetchAllCoreData() -> NSArray? {


    let moc = DataController().managedObjectContext
    let fetchReq = NSFetchRequest(entityName: "Theater")
    var array =  [Theater]()
    fetchReq.returnsObjectsAsFaults = false
    do {
        let obj = try moc.executeFetchRequest(fetchReq) as!  [Theater]
        for var details in obj {


            array.append(details)
        }

    } catch {
        print("Error in Fetching")
        return nil
    }

    return array
}

where 数据控制器()来自http://www.codebeaulieu.com/10/adding-core-data-using-swift-2 http://www.codebeaulieu.com/10/adding-core-data-using-swift-2

我从 fetch 得到的值是

 po print(self.arrTheater)

[(实体:剧院;id:0x7bf67a00;数据:{ 地址=伊斯康; 城市=艾哈迈达巴德; id = 1; 最爱= 1; 名称 = PVR; }),(实体:剧院;id:0x7bf5ee60;数据:{ 地址=“普拉德纳加尔”; 城市=艾哈迈达巴德; id = 2; 最爱 = 0; 名称=Cinemex; }),(实体:剧院;id:0x7bf5ee70;数据:{ 地址 = "新地址"; 城市=拉杰果德; id = 3; 最爱 = 0; name = "蓝色游戏"; }),(实体:剧院;id:0x7bf5ee80;数据:{ 地址=“新ISKON”; 城市=博尔本德尔; id = 4; 最爱= 1; 名称 = JaiHind; }),(实体:剧院;id:0x7bf55120;数据:{ 地址 = "新地址"; 城市=孟买; id=5; 最爱 = 0; 名称=“戏剧”; }),(实体:剧院;id:0x7bf55130;数据:{ 地址=“维杰4路”; 城市=艾哈迈达巴德; id=6; 最爱= 1; 名称 = PVR; }),(实体:剧院;id:0x7bf55140;数据:{ 地址=“Mahavir Nagar”; 城市=德里; id=7; 最爱 = 0; 名称=Cinemex; }),(实体:剧院;id:0x7bf28570;数据:{ 地址=伊斯康; 城市=艾哈迈达巴德; id=8; 最爱 = 0; name = "广角"; })]

该方法是从 viewDidLoad 调用的 之后我重新加载表格视图

Tableview cellForRow 中没有任何内容

一行将值设置为标题标签一切都显示良好

然后在我滚动表格视图或选择表格视图之后

然后我打印

FAULT作为数据的价值

我阅读了理论,发现它只是占位符,但我无法获取它

请帮助我为什么它第一次显示数据然后显示fault

我已经fetchReq.returnsObjectsAsFaults = false

提前致谢


一般来说,不需要担心错误(只要您访问对象的任何属性,CoreData 就会自动触发错误并填充对象)。

但在这种情况下,我怀疑正在发生更邪恶的事情:DataController是在本地实例化的fetchAllCoreData方法,我担心它正在被释放(连同相关的managedObjectContext)一旦该方法完成。因此,您的返回数组包含来自已释放的上下文的 NSManagedObjects。要检查,请尝试制作moc属性而不是局部变量。这应该足以保留对上下文的永久引用(反过来,上下文将具有对底层堆栈的强引用)并防止其被释放。

从长远来看,您应该考虑拥有一套房产DataController本身,或者使其成为单例,以便您可以从任何视图控制器访问它,或者将其从视图控制器传递到视图控制器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

核心数据使用一次后<故障> 的相关文章

随机推荐

  • Mongo shell 中的 NumberLong 算术

    如何在 Mongo shell 中对 NumberLong 值执行精确算术 据我了解 Javascript 只有一种数字类型 number 通常限制为 54 位浮点精度 使用 例如 标准加法的直接算术显示将强制转换为较低精度类型 gt Nu
  • 向 geom_bar() / geom_col() 条添加图案或纹理?

    有时 我需要某种用于 geom bar geom col 条的图案或纹理 即用于黑白打印 例如 以下内容对于某些人来说可能很难查看 library ggplot2 library dplyr warn conflicts FALSE lib
  • 设置标头并使用 $http POST 发送数据到 pocket api 返回 CORS

    无法向 pocket api 发送 http post 请求以获取请求令牌 我已经拿到消费者密钥了 问题似乎出在设置标头和发送请求中的数据 在浏览器中查看请求时 不会显示任何标头和数据 配置请求 var req method POST ur
  • 从整数的商中获取双精度值

    int velMperMin 667 int distM 70 double movT distM velMperMin 60 movtT必须等于6 30 但它是0 您需要将除法的操作数之一转换为双精度值 像这样 double movT d
  • 使用 UMAP 和 HDBScan 进行集群

    我有大量的文本数据 大约有 5000 人输入 我使用 Doc2vec 为每个人分配了一个向量 使用 UMAP 缩减为二维 并使用 HDBSCAN 突出显示其中包含的组 目的是突出具有相似主题相似性的组 这导致了如下所示的散点图 这看起来可以
  • Gitlab CI如何部署最新到特定目录

    我在 Gitlab 中有两个项目 其中一个是另一个项目 我们称这个存储库为 main 的子模块 我们称其为 前端模板 我已经为 frontend templates 存储库设置了 Gitlab CI 构建 问题是我不需要测试或构建 我只需要
  • 将 UIView 中的标签居中

    将标签居中的最佳方法是什么UIView 如果你做了类似的事情 UILabel myLabel UILabel alloc initWithFrame CGRectMake view frame origin x 2 view frame o
  • Flask 只能看到通过curl 发送的多个参数中的第一个参数

    我正在使用curl 向需要多个查询参数的Flask 路由发出请求 但是 日志仅显示 url 中的第一个参数 Flask 看不到第二个参数 出了什么问题 app route path methods GET def foo print req
  • 从 .NET 3.5 WCF Web 服务 (REST) 返回 JSON 和 XML 格式

    我有一个返回 XML 响应的现有 Web 服务 我想添加一些返回 JSON 的新方法 我是否必须创建一个以 JSON 形式返回的单独 Web 服务 还是可以混合使用 如果我使用 ResponseFormat WebMessageFormat
  • 设置 分钟间隔 时 UIDatePicker 的奇怪行为

    以下代码在 iOS 4 3 下显示奇怪的行为 也许其他版本也是如此 在这个例子中 一个UIDatePicker其日期设置为4 Aug 2011 2 31 PM被展示 这UILabel以下UIDatePicker显示日期以供参考 他们三个UI
  • 重写派生类中的成员字段

    我有下面的代码片段 include
  • 如何将 pygame 应用程序转换为 iOS 应用程序

    我使用 pygame 在 python 中编写了一个非常小的未完成的游戏 有没有一种简单的方法可以将其转换为我可以在 iPhone 上使用和测试的应用程序 而无需在 kivvy 等中重写整个代码 没有简单的方法 不可能转换代码 但对于一款简
  • Spark数据集/数据帧连接NULL倾斜键

    使用 Spark Dataset DataFrame 连接时 我面临长时间运行并因 OOM 作业而失败 这是输入 约 10 个不同大小的数据集 大部分都很大 gt 1 TB 所有左连接到一个基础数据集 一些连接键是null 经过一些分析 我
  • 动态大小 UICollectionView 单元格

    1 我怎样才能实现如图所示UICollectionView 2 我已经尝试过 CGSize collectionView UICollectionView collectionView layout UICollectionViewLayo
  • Magento如何缓存productCollection

    我注意到我的主页需要很长时间才能加载 根据 site24x7 com 事实上超过 6 秒 所以我一直在关闭元素以尝试确定原因是什么 这取决于我制作的 2 个产品集合文件展示新产品和畅销产品 当我从主页中删除这些内容后 页面加载时间不到 0
  • Primefaces 数据表冻结列未对齐

    我们有一个数据表 如图所示 有 3 个冻结列 其余可滚动 冻结的列未对齐 如图所示 如果删除冻结列属性 则表看起来正常 任何解决问题的建议 我过去在冻结数据表方面遇到过类似的问题 并在不同的帖子中使用许多不同的脚本 我发现下面的脚本适用于所
  • 当你克隆 `&str` 时会发生什么?

    当你克隆一个时会发生什么 str 是克隆的吗 str指向与克隆者相同的地方 str或者是什么 这有记录在任何地方吗 克隆一个 str与克隆任何相同 T 它只是复制引用 从字面上看 它只是返回自身 https doc rust lang or
  • .FillRectangle 不绘制任何内容

    我无法弄清楚为什么 FillRectangle 不适合我 此外 由于它没有抛出任何异常 我不知道为什么会这样 所以我在这里需要一些帮助 受影响的代码部分是这样的 try using FileStream fileStream File Op
  • 直接从 JavaScript 访问 GET?

    我想我可以使用 PHP 来访问 GET来自 JavaScript 的变量 但也许它更简单 有没有办法直接用JS实现呢 Look at window location search 它将包含一个像这样的字符串 foo 1 bar 2 要将其转
  • 核心数据使用一次后<故障>

    我搜索了几个小时但没有找到任何东西 我处于有线状态核心数据 获取对象的方法 func fetchAllCoreData gt NSArray let moc DataController managedObjectContext let f