Ios 获取核心数据中具有关系的数据
我正在使用核心数据框架,希望使用关系获取数据。 我有两个名为User和Company的实体,分别有User\u name和Company\u name字段。我还与许多名rel_user->user有关系 现在我正试图获取这样的数据Ios 获取核心数据中具有关系的数据,ios,core-data,entity-relationship,Ios,Core Data,Entity Relationship,我正在使用核心数据框架,希望使用关系获取数据。 我有两个名为User和Company的实体,分别有User\u name和Company\u name字段。我还与许多名rel_user->user有关系 现在我正试图获取这样的数据 User *userObj=(User*)[selectedData objectAtIndex:indexPath.row]; NSSet *resultData = [userObj valueForKeyPath:@"rel_user.user"]; N
User *userObj=(User*)[selectedData objectAtIndex:indexPath.row];
NSSet *resultData = [userObj valueForKeyPath:@"rel_user.user"];
NSLog(@"subject -> %@",[resultData description]);
我想显示与用户相关的公司名称。与
rel\u user
的反向关系的名称是什么?假设它是rel_company
,并且用户->公司关系是一对一,那么您只需使用
user.rel_company.company.name
其中,user
是一个特定的user
对象
具体地给你的关系命名并没有什么好处。在用户上有
公司
关系(因为它将是持有公司的财产)和在公司上有用户
关系读起来更好。然后,您可以从名称中判断属性将包含什么,以及它是对一关系还是对多关系 与rel\u user
的反向关系的名称是什么?假设它是rel_company
,并且用户->公司关系是一对一,那么您只需使用
user.rel_company.company.name
其中,user
是一个特定的user
对象
具体地给你的关系命名并没有什么好处。在用户上有
公司
关系(因为它将是持有公司的财产)和在公司上有用户
关系读起来更好。然后,您可以从名称中判断属性将包含什么,以及它是对一关系还是对多关系 您可以通过关系名称获取相关公司名称
用户userObj=(用户)[selectedData objectAtIndex:indexPath.row]
NSString*companyName=userObj.RELATION\u NAME.company\u NAME
关系名称用于从用户实体连接到公司实体
希望这会有所帮助。您可以通过关系名称获取相关公司名称 用户userObj=(用户)[selectedData objectAtIndex:indexPath.row] NSString*companyName=userObj.RELATION\u NAME.company\u NAME 关系名称用于从用户实体连接到公司实体
希望这会有所帮助。您好,谢谢您的回复,但我找不到与用户对象的关系属性。我需要为其设置父类吗?您自己在核心数据模型编辑器中定义关系。如果不创建子类,则必须使用valueForKeyPath。您好,谢谢您的回复,但我找不到与User对象的relationship属性。我需要为其设置父类吗?您自己在核心数据模型编辑器中定义关系。如果不创建子类,则必须使用valueForKeyPath。