【发布时间】:2017-05-23 22:53:16
【问题描述】:
我正在使用Core Data 来获取实体。我只需要获取具有attribute 关系且 ID 为 41 的实体,并且相同的 attribute 需要将 isOn 属性设置为 YES。
这是我正在尝试的:
[NSPredicate predicateWithFormat:@"(SELF IN %@ AND ANY attributes.attributeID.intValue == 41) AND (SELF IN %@ AND ALL attributes.isOn == %@)", self.places, self.places, @YES];
由于某种原因,我的应用程序崩溃了,没有解释。
关于我的谓词格式是否错误的任何想法?
编辑:
做更多研究似乎我需要使用SUBQUERY,但不太确定在这种情况下如何使用。这是我尝试过的,但它也因“无法解析格式”错误而崩溃:
[NSPredicate predicateWithFormat:@"SUBQUERY(SELF IN %@, $e, $e.attributes.attributeID.intValue == %i && $e.attributes.isOn == %@).@count > 0)", self.places, 41, @YES]
【问题讨论】:
-
“崩溃”是什么意思?你有堆栈跟踪吗?
-
@AminNegm-Awad 不,没有堆栈跟踪。
标签: ios objective-c core-data nspredicate