核心数据 - 在 Group By 中使用瞬态属性

2023-11-24

我正在创建一个带有一些聚合数据的 UITableView。在此过程中,需要使用节标题对表视图单元格进行排序和分组。

问题是我想在 NSFetchRequest 中使用瞬态属性来生成节标题和结果排序。问题是,在设置 NSFetchRequest 时,我收到“NSInvalidArgumentException”,原因是:“传递给 setPropertiesToFetch 的密钥路径player.fullName 无效”。

NSFetchRequest 的主要实体是一个具有以下属性的 Player 实体:firstName 和 lastName。为了对数据进行排序和分组,引入了瞬态属性“fullName”。这是lastName 和firstName 属性的简单串联。

到目前为止尝试过的事情有:

a) 定义 -(NSString*)fullName 方法

b) 定义一个 @property (nonatomic,readonly) NSString *fullName

c) 添加@dynamic fullName

d) 将 fullName 属性添加到 Player 实体并使其成为瞬态。

是否有任何想法或无法在包含 group by 子句的 NSFetchRequest 中选择瞬态属性。

任何帮助表示赞赏。


最后,似乎在 NSFetchResults 和 Group By 的组中包含瞬态属性是不可能的。

jrturton 提出的很棒的建议已经接近。最后,瞬态属性 fullName 很容易在实体更新时生成,并且更新频率非常低,因此解决方案是停止使用瞬态属性并创建一个完全成熟的属性。只需将其视为极端的非规范化即可。

解决方案是设置以下内容

-(void)setLastName:(NSString*)aName
{
    [self willChangeValueForKey: @"lastName" ];
    [self setPrimitiveValue: aName forKey: @"lastName" ];
    [self updateFullName];
    [self didChangeValueForKey: @"lastName" ];
}

-(void)setFirstName:(NSString*)aName
{
    [self willChangeValueForKey: @"firstName" ];
    [self setPrimitiveValue: aName forKey: @"firstName"];    
    [self updateFullName];
    [self didChangeValueForKey: @"firstName" ];
}

这会将 fullName 更新为 Player 实体的属性并消除我的问题。希望能帮助到你。

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

核心数据 - 在 Group By 中使用瞬态属性 的相关文章

  • iOS:适用于 iOS 的基于 Flash 的编程应用程序?

    我想知道 有没有办法支持 iOS 的基于 Flash 的编程应用程序 它可以是本机 混合或网络应用程序 我想知道 是否有可能为 iOS 设备开发基于 Flash 的应用程序 我看过论坛 到处都说这是不可能的 所以只想在开始任何开发之前确认一
  • CC Parallax 节点视差比(说明)

    我觉得问这个问题很愚蠢 但我在任何地方都找不到明确的答案 或者根本找不到答案 所以我觉得我必须问 有没有人可以清楚地解释 CCParallaxNode 的 parallaxRatio 是如何工作的 我检查了CCParallaxNode的来源
  • 是否可以在 iOS 上确保 oauth 安全?

    是否可以在 iOS 上确保 oauth 安全 我正在调查OAuth 2 0 http tools ietf org pdf draft ietf oauth v2 12 pdf作为一种为 iOS 应用程序 套件 实现单点登录 授权的方法 为
  • 在 Grand Central Dispatch 中使用dispatch_sync

    任何人都可以用非常清晰的用例解释其目的是什么dispatch sync in GCD是为了 我不明白在哪里以及为什么我必须使用它 Thanks 当您想要执行一个块并等待结果时可以使用它 其中一个示例是使用调度队列而不是锁进行同步的模式 例如
  • 如何检查dispatch_async块是否已完成运行

    所以基本上我需要能够在块完成运行后运行 segue 我有一个块可以执行一些 JSON 操作 我需要知道它何时完成运行 我有一个队列 我称之为 json queue jsonQueue dispatch queue create com ja
  • iOS 上服务器发送事件的 webkit 的推荐替代方案 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在我的本机 iOS 应用程序中接收服务器发送的事件 但我不使用 webkit Safari 根据我
  • DFP 问题:无广告可展示

    我的应用程序在 UIScrollView 中提供三个广告 通过 DoubleClick for Publisher 我使用旧版本的适用于 iOS 的 AdMob SDK 一切正常 我决定下载新版本 因为 AppStore 出现一些问题 添加
  • 在UIView中画线

    我需要在 UIView 中画一条水平线 最简单的方法是什么 例如 我想在 y coord 200 处画一条黑色水平线 我没有使用界面生成器 也许这有点晚了 但我想补充一点 有更好的方法 使用 UIView 很简单 但相对较慢 此方法会覆盖视
  • iOS 15 中表视图标题上方的额外填充

    如何更改上面的额外填充UITableViewiOS 15 中开始出现的节标题 从 iOS 15 开始 UITableView包含一个名为的新属性sectionHeaderTopPadding https developer apple co
  • 在 iPad 上运行时,不会触发 Mobile Safari 中即将发生的选项卡切换的 Pagehide 事件

    众所周知 Mobile Safari 在以下情况下会暂停网页上的 Javascript 执行 您切换到不同的浏览器选项卡 切换到不同的 iOS 应用程序 例如 当您接到来电时 手机应用程序 您可以订阅窗口 页面隐藏 and 页面展示 事件来
  • 所有 UI 前面的透明 UIImageView

    首次启动我的应用程序后 我想向用户展示一些教程 以解释我的应用程序的功能 所以我需要设置一个带有一些箭头和标签的透明 UIImageView 其中主 UI 更具体地说 tabbarcontroler 中的 navigationviewcon
  • 使用 NSPredicate 来检测 NOT CONTAINS

    我放弃 我已经尝试了我能想象到的所有组合来检查一个字符串是否包含另一个字符串 这是描述我想要做的事情的直观语法示例 NSPredicate pPredicate NSPredicate predicateWithFormat NOT K C
  • 如何让 iPhone 发出蜂鸣声?

    什么代码可以让我在 iPhone 上发出标准的蜂鸣声 好吧 这取决于您想要什么样的声音 以下是如何使用 AVFoundation 音频框架播放声音 import
  • 从方案加载 url 第一次未处理 - appdelegate 与 viewcontroller

    我的应用程序已成功打开并将参数 从 URL 方案 即 myApp sometextToPrint 设置为AppDelegate类 但每当我想处理它们时 当从该 URL 打开应用程序时 它就会在第一次失败 我在前台检查器中有一个应用程序 它调
  • 获取 iOS Swift 中 UIViewController 的所有列表

    有没有办法获取 iOS Swift 项目中的所有 UIViewController 我想获取所有 UIViewController 的数组并检查特定的 UIViewController 是否存在 我必须找到项目中是否存在特定的 UIView
  • iOS 有没有办法通过按钮调整图像大小?

    如下图所示 按钮的图像跨越了按钮边界 有没有办法通过故事板或以编程方式使图像适合按钮的边界 更改按钮Style from Plain to Default 这是一个限制为60 x 60 with a 80 x 80图像与Style Plai
  • 应用程序图标上的快捷方式项目不适用于 iOS 13

    为了支持应用程序图标上的快捷方式项目 我们在中实现了以下方法SceneDelegate func windowScene windowScene UIWindowScene performActionFor shortcutItem UIA
  • 处理 iPhone X 系列上 Chrome 浏览器中的安全区域

    对于我管理的网站 我正在使用新的 iPhone X 系列屏幕安全区域safe area inset
  • 如何在 JSONKit 中 JSON 序列化 NSDate 字典

    我尝试使用 Jsonkit 和 Apple 的 JSON 序列化器 但没有成功 它不断破坏 geo 属性 该属性是 NSNumbers 的 nsarray Post p Post alloc init p uname mike p like
  • 将蒙版图像作为 PNG 文件写入磁盘

    基本上 我从网络服务器下载图像 然后将它们缓存到磁盘上 但在这样做之前 我想屏蔽它们 我正在使用每个人似乎都指出的屏蔽代码 可以在这里找到 http iosdevelopertips com cocoa how to mask an ima

随机推荐

  • 以编程方式将图像添加到 RTF 文档

    我正在尝试将图像添加到我正在创建的 RTF 文档中 我宁愿不使用清除剪贴板的 复制 粘贴 方法 涉及将图像粘贴到 RichTextBox 中 然后访问 RTF 属性 因为这会给我的最终用户带来麻烦和困惑 到目前为止 我的代码返回需要插入到
  • Array.map是什么概念?

    我在理解以下概念时遇到问题Array map 我确实访问了 Mozilla 和 Tutorials Point 但他们提供的相关信息非常有限 这就是我使用的方式Array map 它有点复杂 涉及一些 d3 js 忽略它 var mapCe
  • 在用[]添加值之前是否需要声明PHP数组?

    arr array is this line needed arr 5 我知道它不需要第一行就可以工作 但它经常包含在实践中 是什么原因 没有它就不安全吗 我知道你也可以这样做 arr array 5 但我说的是需要一项一项地添加项目的情况
  • ASP.NET MVC 3 多个模型到单个表单

    我正在学习 ASP NET MVC 3 并尝试创建一个具有单个表单的视图 该表单由通过外键链接在一起的多个模型组成 最终目标是将单个表单插入到所有数据库表中 问题是 我无法弄清楚为什么当我右键单击创建视图时 表单没有在 cshtml 文件中
  • 无法打开输出文件 debug\serbest.exe:权限被拒绝

    我用 C 编译 Qt 程序 收到以下错误消息 无法打开输出文件 debug serbest exe 权限被拒绝Collect2 ld 返回 1 退出状态 这些命令的含义是什么 我该如何消除这些错误 最可能的原因 serbest exe 仍在
  • JDBC4中驱动程序类是如何定位的

    JDBC 第 4 版中的重要补充之一您不必显式加载 司机通过电话Class forName不再了 当您的应用程序第一次尝试连接数据库时 DriverManager自动加载找到的驱动程序 应用程序CLASSPATH 我的问题是如何 如果类路径
  • 如何为 IE8 填充 Array.prototype.includes()

    我正在尝试填充数组方法includes 以与IE8一起使用 我需要支持一个项目并且我不想使用indexOf 我知道有一个polyfill 所以我去了 https developer mozilla org en US docs Web Ja
  • AttributeError:类型对象“numpy.ndarray”没有属性“__array_function__”

    我将 numpy 升级到最新版本 现在导入 numpy 时出现以下错误 AttributeError 类型对象 numpy ndarray 没有属性 数组函数 我正在使用 numpy 版本 1 16 使用以下命令卸载 Numpy 的所有安装
  • Gnu-Screen:运行脚本,将命令发送到正在运行的屏幕会话

    是否可以编写一个脚本来更改名称并打开对当前选项卡的监视 假设它正在屏幕中运行 Thanks 从屏幕手册页 X Send the specified command to a running screen session You can us
  • 所有对最大流量

    给定一个有向加权图 如何找到最大流量 or 最小切边 在所有顶点对之间 天真的方法就是简单地调用Max Flow像 Dinic 的算法 其复杂度为O V 2 E 对于每对 因此对于所有对来说都是O V 4 E 是否可以将复杂度降低到O V
  • 如何从 .env 文件设置环境变量

    假设我有 env 文件包含如下行 USERNAME ABC PASSWORD PASS 与正常人不同的是export前缀 所以我无法直接获取文件 创建从 env 文件加载内容并将其设置为环境变量的 shell 脚本的最简单方法是什么 如果您
  • R (purrr) 展平命名列表以列出并保留名称

    也许我遗漏了一些明显的东西 但试图将 R 中的命名列表的命名列表 甚至可能更加嵌套 扁平化为最终一个平面列表 purrr and rlist似乎有这方面的工具 我怎样才能实现子列表的名称成为扁平化结果列表的名称预加密 例如list1 bli
  • 在主对话框中嵌入对话框并通过 MFC 中的按钮单击进行切换

    我有一个如下的设计 所以基本上 我想在应用程序主对话框中嵌入三个对话框并在它们之间切换 对于每个按钮单击 即按钮 1 将显示对话框 1 按钮 2 将隐藏对话框 1 并显示对话框 2 等等 每个对话框都有不同的设计和功能 我尝试使用 CPro
  • 为什么 std::regex_iterator 会导致此数据堆栈溢出?

    我一直在使用std regex iterator解析日志文件 我的程序已经工作了好几个星期 并且已经解析了数百万条日志行 直到今天 当今天我对日志文件运行它并得到堆栈溢出时 事实证明 只有日志文件中的一个日志行导致了问题 有谁知道为什么我的
  • 自从最近引入登录审核以来,我如何测试 Facebook 应用程序?

    我正在开发一个 Facebook 应用程序 它通过 API 调用来获取用户事件列表 该应用程序将使用 Javascript 来调用用户 事件边缘 如下所示 FB api user id events function response if
  • Powershell 中加号 (+) 的特殊使用

    除了其自然用法 即两个参数相加 之外 您还可以使用加号 登录 Powershell 进行特殊调用 如下所示 System Net WebRequestMethods Ftp UploadFile UploadFile是一个公共静态字段 根据
  • C#:以编程方式在工作表范围内创建“命名范围”

    我们如何创建一个 命名范围 其范围设置为工作表 因为我们可以从 Excel 手动执行此操作 所以我想有一种方法可以在代码中执行此操作 使用 设置名称Range Name 属性创建一个工作簿范围的命名范围 我尝试在范围名称前添加 前缀按照建议
  • 在 pandas MultiIndex DataFrame 中选择行

    选择 过滤行的最常见的 pandas 方法是什么索引为 MultiIndex 的数据帧 基于单个值 标签的切片 基于来自一个或多个级别的多个标签进行切片 过滤布尔条件和表达式 哪些方法适用于哪些情况 为简单起见假设 输入数据帧没有重复的索引
  • 在 Microsoft Edge 中使用 @font-face

    我在这里处理一个奇怪的问题 当我使用 font face 时 Microsoft Edge 浏览器似乎不加载字体 我检查了所有运行 Windows 10 和 Microsoft Edge 的计算机 我检查了http caniuse com
  • 核心数据 - 在 Group By 中使用瞬态属性

    我正在创建一个带有一些聚合数据的 UITableView 在此过程中 需要使用节标题对表视图单元格进行排序和分组 问题是我想在 NSFetchRequest 中使用瞬态属性来生成节标题和结果排序 问题是 在设置 NSFetchRequest