- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Core Data 的新手。
在数据模型中我有实体:
歌曲
播放列表
这是关系:
Song
不属于一个或多个Playlist
我已经像这样将关系添加到模型中。
我还制作了反向对多关系。
现在我的问题。
Playlist
现在有一个包含所有 Song
的 NSSet
。
所以我可以通过 playlist.songs
访问它们。
我可以使用 NSPredicate
获取任何特定的 Song
:
- (NSArray *)fetchWithEntity:(NSString *)entity
predicate:(NSPredicate *)predicate
sortDescriptors:(NSArray *)sortDescriptors
error:(NSError **)error {
NSManagedObjectContext *moc = [self managedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription
entityForName:entity
inManagedObjectContext:moc];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDescription];
[request setPredicate:predicate];
[request setSortDescriptors:sortDescriptors];
NSArray *fetchResult = [moc executeFetchRequest:request error:error];
return fetchResult;
}
但是,我希望也可以过滤特定播放列表的 Song
,而不必使用 NSPredicate 过滤
,因为它更快。NSSet
我该怎么做?
最佳答案
获取特定播放列表的歌曲,只需在用于获取Song
对象的谓词中添加"playlist = %@"
,例如
[NSPredicate predicateWithFormat:@"playlist = %@ AND title CONTAINS[cd] %@",
thePlaylist, songTitle]
或者,如果播放列表由标题给出:
[NSPredicate predicateWithFormat:@"playlist.title = %@ AND title CONTAINS[cd] %@",
playlistTitle, songTitle]
编辑 如果歌曲和播放列表之间存在多对多关系,您可以将播放列表
定义为歌曲 到 Playlist,与 songs
成反比关系。那么下面的谓词应该起作用:
[NSPredicate predicateWithFormat:@"ANY playlist = %@ AND title CONTAINS[cd] %@",
thePlaylist, songTitle]
关于objective-c - 获取反向关系,而不是 Core Data 中的 NSSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14125410/
我一直在尝试使用 CoreData 和 Swift 在关系中添加对象。我很茫然,我不明白为什么我的代码不起作用。我正在尝试向“团队”添加“事件”。我找不到已接受的答案(应该有效)和我的代码(无效)之间
我有两个 NSSet。一个包含所有用户 key ,另一个包含在线用户 key 。我想分两部分展示这个值。 Section 1-在线用户和section2-其他用户 我使用如下谓词完成了此操作。 NSS
我正在努力处理核心数据...有些事情我不明白,所以如果有人能帮助我,我将不胜感激!我有一个实体(食谱)与另一个实体(膳食)存在多对多关系。我想选择所有与一顿饭无关的食谱……所以我试过了: 代码: [m
这个问题在这里已经有了答案: Odd property declaration syntax containing angular brackets <> (2 个回答) 6年前关闭。 我已生成 NS
我有两个关系表。 在尝试保存产品的 ShopItem 类中: let productEntity = NSEntityDescription.entityForName("Product", inMa
我有一个 UITableView,它通过以下方式添加核心数据中的信息: 标题中添加了各种名称的“类别” 与类别相对应的名称应加载到类别下方的单元格中 现在,我的标题加载了正确的名称以及添加的正确数量的
当列出相同的 tableView 时,有时会发生这种错误,我的意思是有时是,有时不是。当我尝试检查检索到的 NSSet 是否包含任何对象时: if(coin.dublicates.count > 0)
众所周知,比较 float 时存在 float 精度问题。 此外,NSSet 使用相等比较来保持元素在其中的唯一性。 那么当 NSSet 存储其中包含 float/double 的 NSValues
我正在将数据与核心数据一起使用,并获得一个 NSNumber 的 NSSet...我的问题是如何轻松地将所有对象更改为 int 值?或者我可以直接从数据库中获取 int 值吗? 谢谢 最佳答案 NSS
假设我有 NSManagedObject Zoo,他得到了一个到名为 cats 的“Cat”的连接 oneToMany,这个连接是 NSSet。当我使用函数 'filteredSetUsingPred
我在产品实体和购物车实体之间存在一对多关系。 用户需要有机会从购物车中删除产品。 我这样获取产品: // Fetch request for "Product": NSFetchRe
我正在尝试处理 xCode 中的关系,但遇到了一些问题: 我想创建一个简单的 User 到 favoriteThing 关系。我创建了一个模型,因此每个用户看起来都是这样的: extension Us
我想过滤categoryId == value但我的谓词失败的地方。这是我的代码。 categoryList 是 VenueCategory 类的对象数组,categoryId 是 Category
很抱歉新手问题,但我们都在这一点上:) 我正在进行枚举以从 NSSet 中获取正确的对象,以将 Cell 的标题设置为 Set 中的对象,这是我的代码: // the object we wa
我有 2 个按钮:button1 和 button2。我想为每个触摸的相应按钮创建一个 NSSet,并希望在触摸按钮 2 时显示 set1 值,反之亦然。按下按钮 1 时仅打印 set 1,按下按钮
我从 CoreData 返回了一个 Customer 对象。我正在尝试计算 NSSet 中存在的所有 amount 属性的总和: extension Customer { //...
我从 Web 服务中获取了一些 JSON,其中包含我希望分解为元素的逗号分隔字符串。 因为这是多对多关系,所以我尝试将其作为 NSSet 获取。但是,json 本身似乎由字符串组成,因此我需要先将逗号
所以我有这个 NSSet 对象,直接来自 Core Data 关系。这个 NSSet 包含的对象都是同一基础对象的所有子类(我们称它为 RVSuperClass,它本身是 NSManagedObjec
为什么我做不到 NSLog(@"mySet count: %@", [mySet count]); 然后使用 NSSet? (如果我确实使用它,应用程序会因“EXC_BAD_ACCESS”而崩溃 我已
我的核心数据中有一个一对多的关系设置: Day > Transactions 一天对象将包含交易的 NSSet 和 Date。 在某些时候,我想获取最新的 Day 并通过一段时间(每月和每年)过滤其
我是一名优秀的程序员,十分优秀!