我有一个用户列表,每个用户都有
Users.accounts ---> Accounts.measurements ---> measurement.account
我想从测量“表”中提取所有测量值,其中measurement.account =一个特定的帐户,其中measurement.type(属性)是“风速”的例子。
所以我: 在测量上创建获取请求 我想创建一个谓词type =“wind speed”和account = {NSAccount object}
我该怎么做?
测量类型很简单:
*predicate = [NSPredicate predicateWithFormat:@"measuretype = 'air speed'];
指定关系,我不知道:
myAccountObject *myAccount=[accountFromId:@"6785"];
*accountpredicate = [NSPredicate predicateWithFormat:@"account = ???",myAccount];
答案 0 :(得分:0)
在谓词中,%@
是对象值的var arg替换,所以
[NSPredicate predicateWithFormat:@"account = %@",myAccount]
可能就是你要找的东西。即使对于常量字符串,这也是可取的,因为它避免了嵌入式引号或其他特殊字符的问题 必须另有引用。所以你的组合谓词将是:
[NSPredicate predicateWithFormat:@"measuretype = %@ AND account = %@",
@"air speed", myAccount]
有关详细信息,请参阅中的"Predicate Format String Syntax" “谓词编程指南”。