获取实体的请求。attribute == @"somevalue"

2024-04-22

如何设置提取请求以仅从具有一个特定值的实体属性中提取数据?这是我之前使用过的基本代码。

-(void)fetchResults
{
    NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:self.entityDescription.name];
    NSString *cacheName = [self.entityDescription.name stringByAppendingString:@"Cache"];

    // predicate code
    if (self.predicate != nil) {
        [fetchRequest setPredicate:self.predicate];
    }
    // end of predicate code

    NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES];
    [fetchRequest setSortDescriptors:[NSArray arrayWithObject:sortDescriptor]];

    self.fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:nil cacheName:cacheName];

    BOOL success;
    NSError *error;
    success = [self.fetchedResultsController performFetch:&error];
    if (!success)
    {
        NSLog(@"%@", [error localizedDescription]);
    }
}

我一直在看这个页面:http://bit.ly/KevYwR http://bit.ly/KevYwR这是正确的方向吗?

我需要使用吗NSPredicate或者我可以不用吗?

感谢您的帮助,指出正确的方向等等。


设置一个NSFetchRequest相当于SQL语言中的SELECT语句。

这是一个简单的例子:

NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"EntityName" inManagedObjectContext:moc]];

NSError *error = nil;
NSArray *results = [moc executeFetchRequest:request error:&error];

// error handling code

数组results包含 sqlite 文件中包含的所有托管对象。如果您想获取特定对象(或更多对象),您需要在该请求中使用谓词。例如:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"attribute == %@", @"Some Value"];
[request setPredicate:predicate]; 

在这种情况下results包含属性等于的对象Some Value。设置谓词相当于在 SQL 语句中放置 WHERE 子句。

Note

我认为该实体的名称是EntityName它的属性称为attribute这是字符串类型。

有关更多信息,我建议您阅读 Core Data 编程指南和NSFecthRequest类参考。

  • http://developer.apple.com/library/iOS/#documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html http://developer.apple.com/library/iOS/#documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html

  • https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/CoreDataFramework/Classes/NSFetchRequest_Class/NSFetchRequest.html https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/CoreDataFramework/Classes/NSFetchRequest_Class/NSFetchRequest.html

希望能帮助到你。

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

获取实体的请求。attribute == @"somevalue" 的相关文章

  • 如何从 iPhone 中删除 coredata

    您知道当您更改实体结构时如何重置 iPhone 模拟器上的核心数据存储吗 当我创建的核心数据存储的新版本与我上次在 iPhone 上运行的版本不同时 是否需要执行类似的过程 如果可以的话 请问如何 Thanks 只是为了方便起见 除非您编写
  • 如何防止“CoreData无法完成故障”?

    我们偶尔会收到 CoreData 无法完成故障 的信息 我们已阅读 Apple 文档 但不清楚允许保留哪些内容 我们非常小心地为每个线程创建一个上下文等 但是 我们的应用程序正在做的一件事是我们在 UIViewController 上保留
  • iPhone |从头开始构建新版本的核心数据迁移

    我正在开发应用程序更新 这个版本完全是从头开始构建的 并且具有全新的功能coreData模型架构 我需要写coreData从旧模型迁移 我一直在寻找资源来写作coreData迁移但都需要旧模型文件 由于这个版本是全新的 所以我没有旧的模型架
  • 核心数据:executeFetchRequest 与 PerformFetch

    我想要一份关于两者之间比较的完整列表 我所知道的事情 executeFetchRequest 消息已发送至 MOC 返回托管对象的数组 目标 从持久存储中获取对象到 MOC With table view 与表视图无关 频率 经常在循环中使
  • 如何从控制器调用构造函数中具有参数(接口)的属性

    public class HMACAuthenticationAttribute Attribute IAsyncAuthorizationFilter public HMACAuthenticationAttribute IUser us
  • 强制设置核心数据检查点?

    我编写了一个通过 Core Data 搅动大量数据的应用程序 用户在后台退出应用程序后 我会清理这些数据 由于 WAL 检查点似乎是导致 UI 暂停的主要原因 因此我还想强制使用 WAL 检查点 是的 我知道创建第二个核心数据堆栈 这也将完
  • NSFetchedResultsController 在 VIPER 架构中的位置是什么?

    In VIPER https www objc io issues 13 architecture viper 与MVC不同的是 NSFetchedResultsController的角色和地点没有那么明确的定义 把它放在交互器上合适吗 根
  • RestKit 对象与外键的映射关系

    RestKit 是否可以在不将外键存储为属性的情况下连接关系 即直接从 JSON 中的键路径存储 特别是 我有一个 Job has many Rooms 关系 房间的 JSON 不包含作业 而是分别加载 job id 1 name John
  • iOS 的云存储选项

    我正在尝试创建一个后端 让许多用户可以在我正在创建的 iPhone 应用程序中相互通信 我尝试过使用 Core Data Google App Engine Google Cloud Storage 和 Amazon Web Service
  • 如何保证主机应用程序和扩展程序使用的共享应用程序容器中的核心数据存储中的唯一条目?

    为了有效地提出我的问题 让我们首先考虑一下我面临的具体场景 常规设置 一个主机 iOS 8 应用程序 与主机应用程序捆绑在一起的一个或多个 iOS 8 扩展 WatchKit Share 等 主机应用程序和所有扩展在共享应用程序组容器中共享
  • 将 NSSet 转换为 Swift 数组

    在 CoreData 中我定义了一个无序的一对多关系 这种关系在 Swift 中定义如下 NSManaged var types NSMutableSet 然而 为了最好地使用 Swift 我想使用一个普通的 Swift 数组 比如Type
  • 使 HTML5 视频海报与视频本身大小相同

    有谁知道如何调整 HTML5 视频海报的大小 使其适合视频本身的确切尺寸 这是一个显示问题的 jsfiddle http jsfiddle net zPacg 7 http jsfiddle net zPacg 7 这是代码 HTML
  • 如何使用必须包含空格的 title~= 进行 CSS 属性选择器? [复制]

    这个问题在这里已经有答案了 我有以下选择器 post link title Corporate 现在 我需要只选择标题仅在开头而不是标题中其他位置包含 Corporate 一词的元素 所以我有两个选择 1 创建一个仅检查标题开头的选择器 然
  • 如何按月对获取的日期进行分组

    我将数据插入到日期类型的核心数据中 但是当我尝试从数据库中获取数据时 我无法按月对它们进行分组 您可以找到我尝试解决方案的代码 但它不起作用 let groupedDict Dictionary grouping self lessons
  • NSFetchRequest 不返回任何内容

    任何人都可以发现为什么这不返回任何 ManagedObjects 吗 我试图将以下内容添加到 ATNSManagedObject EasyFetching 类中 但获取结果不返回任何内容 如果我在 EasyFetch 类之外获取这些对象 我
  • 当属性值在 HTML5 中可以保持不带引号时

    HTML5 中什么时候属性值可以保持不带引号 HTML4 01 是一个 SGML 应用程序 因此 在 HTML4 中 如果值中使用的唯一字符是当前声明为名称字符的字符 字母数字字符 句号 则可以省略引号 好吧 来自 W3C 工作草案 201
  • 提升灵气自定义综合属性(通过语义动作设置结构体属性的特定成员)

    假设我有一个结构体 我想用灵气解析成 它的定义如下 struct data bool export std wstring name data export false 另外 假设该结构已适应融合 如下所示 BOOST FUSION ADA
  • Swift 2.0 中的 countForFetchRequest

    我正在尝试使用countForFetchRequestSwift 2 0 中托管对象上下文上的方法 我注意到错误处理executeFetchRequest已更改为新的do try catch syntax func executeFetch
  • 使用“对多”关系从 NSFetchedResultsController 派生 UITableView 部分

    我的核心数据模型如下所示 article lt gt gt category 是否可以远程使用NSFetchedResultsController生成一个看起来像这样的 UITableView Category 1 Article A Ar
  • 如何在 UML 中正式记录 C# 属性?

    在 UML 类图中记录类的 C 属性的正确方法是什么 我还没有决定这是否是我的答案 但我想我会把它扔在那里以便讨论 这看起来可以接受吗 它是属性类型的实例 其中元数据值放入下面的标记值中 我刚刚弄清楚如何添加自定义立体类型 该箭头只是一个标

随机推荐

  • 时间戳格式 - 从 1/1000 秒到 1/100 秒

    需要将1 1000秒分辨率的时间戳转换为1 100分辨率 我可能会用to char timestamp text 用于此目的的格式化功能 但是需要帮助text在这里使用 输入表 注意 这里的时间戳存储为 varchar ms1000 val
  • 复杂对象上的自定义 NSSortDescriptor

    这是我的第一篇文章 如果我可能不尊重所有惯例 我很抱歉 尽管我会尽力而为 我以前总是在 SO 上找到解决我的问题的方法 但我完全陷入了一个相当复杂的可可问题 我正在尝试对 CoreData 对象列表进行复杂的排序 我有一个由 Book 对象
  • Jquery:停止传播?

    我已经添加了 stopPropagation 但是 我仍然连续出现两个弹出窗口 这比以前好多了 其中一个被单击的元素有 20 个弹出窗口 是否有更好的方法或者我错过了什么 top document ready function click
  • 如何在 Android 浏览器上阻止某些网址?

    如何在 Android 默认浏览器上阻止某些网址 网站 我想限制用户访问某些列入黑名单的网址 例如 如果我想阻止 Facebook 那么手机内置应用程序浏览器将无法访问此 Facebook 网站 您想通过让用户安装应用程序来阻止用户设备上的
  • 使用 shutdown 终止 Amazon EC2 实例

    我可以使用 API 命令终止 Amazon EC2 实例ec2 终止实例但我试图找出如何在登录到 EC2 实例本身时执行此操作 我试过了立即关闭 h但这只是 停止 实例 而没有完全终止它 有什么办法可以做到这一点吗 您可以在创建实例时设置一
  • tkinter 无法正确识别屏幕分辨率

    我使用的是 4k 显示器 3840x2160 from tkinter import root Tk width root winfo screenwidth height root winfo screenheight print wid
  • MVC DropDownList SelectedValue 未正确显示

    我尝试搜索 但没有找到任何可以解决我的问题的内容 我在 Razor 视图上有一个 DropDownList 它不会显示我在 SelectList 中标记为 选定 的项目 以下是填充列表的控制器代码 var statuses new Sele
  • 密码强度计

    我正在尝试创建自己的 JS 密码强度计 它之前可以工作 但我不喜欢它的工作方式 所以我尝试使用 score 10 而不仅仅是 score 这是我的代码 http jsfiddle net RSq4L http jsfiddle net RS
  • 为什么 Kotlin 编译器需要 var 属性的显式初始化器?

    我无法理解以下 Kotlin 文档 The initializer getter and setter are optional Property type is optional if it can be inferred from th
  • 无法读取未定义的属性“forEach”

    var funcs 1 2 forEach i gt funcs push gt i 为什么会产生下面的错误 TypeError Cannot read property forEach of undefined at Object
  • 如何为 JVectorMap jquery 插件生成新的自定义地图?

    有用的链接 JVectorMap http jvectormap com http jvectormap com 购物中心示例 http jvectormap com examples mall http jvectormap com ex
  • Scala 中 def 和 val 的区别

    循环定义如下 def loop Boolean loop 当x定义为 def x loop然后控制台中会显示 x Boolean and 当x定义为 val x loop然后就进入无限循环 我知道 def 正在使用按名称调用 而 val 正
  • 不允许主机连接到此 MySQL 服务器以进行客户端-服务器应用程序

    我刚刚将表从一台 Web 主机导出到另一台 AWS 以为一切都会顺利 是的 没错 好吧 一切可能出错的事情都已经出错了 尝试查询我的数据库时出现此错误 我之前没有得到过 SQLSTATE HY000 1130 Host
  • Android:如何使用单个按钮执行多个任务

    我有 1 个按钮处于活动状态 我想使用这个 1 按钮来执行多项任务 那么我该怎么办呢 如果我第一次按此按钮 则更改 2 次按钮 如果我按第二次 它就会更新我的数据 但这只是第一次工作第二次就不起作用了 查看我的代码我尝试了什么 Intent
  • 更好的数据库设计是:更多的表还是更多的列?

    一位前同事坚持认为 具有更多表且每个列较少的数据库比具有较少表且每个列较多的数据库更好 例如 您将拥有一个名称表 一个地址表 一个城市表等 而不是包含名称 地址 城市 州 邮政编码等列的客户表 他认为这种设计更加高效和灵活 也许它更灵活 但
  • Caffe 中的预测 - 异常:输入 blob 参数与网络输入不匹配

    我使用 Caffe 使用非常简单的 CNN 结构对非图像数据进行分类 我在尺寸为 n x 1 x 156 x 12 的 HDF5 数据上训练网络没有任何问题 但是 我在对新数据进行分类时遇到了困难 如何在不进行任何预处理的情况下进行简单的前
  • CUDA Thrust 和 sort_by_key

    我正在寻找 CUDA 上的排序算法 它可以对元素数组 A 双精度 进行排序 并返回该数组 A 的键 B 数组 我知道sort by keyThrust 库中的函数 但我希望元素数组 A 保持不变 我能做些什么 我的代码是 void sort
  • 在环形应用程序中捕获异常的惯用方法

    处理环形应用程序中的异常的惯用方法是什么 我想捕获异常并返回 500 页 我怎么做 我在下面的代码中使用了 Mustache 但是它不起作用 def my app try app wrap logger true wrap keyword
  • java.util.logging.Logger 不尊重 java.util.logging.Level?

    在普通 Java SE 6 环境中 Logger l Logger getLogger nameless l setLevel Level ALL l fine somemessage Eclipse 控制台中没有显示任何内容 l info
  • 获取实体的请求。attribute == @"somevalue"

    如何设置提取请求以仅从具有一个特定值的实体属性中提取数据 这是我之前使用过的基本代码 void fetchResults NSFetchRequest fetchRequest NSFetchRequest fetchRequestWith