我有一个条件,我的两个实体有许多:
一个类别可以有很多地方,另一方面,地方也可以 在许多类别下
数据已成功存储在我的sqlite中,但是当我在sqlite manager软件中检查两个entite的结构时,两者之间的关系就消失了。
通常,当我声明1 .. *时,例如:
实体B有一个实体A
地点属于一个类别
类别将成为Place中的属性,我可以将其用于以后使用:
Category *category = (Category*)place.category;
NSString *catId = category.catId;
如果那里有值,它应返回值catId
。
但是在很多情况下,我甚至无法得到catId
,它会像这样崩溃:
-[_NSFaultingMutableSet catID]: unrecognized selector sent to instance
我在这里想念一个概念吗?我相信核心数据支持多种关系,因为我已经在某些网络中阅读过了。谢谢!
答案 0 :(得分:1)
您与Place->类别之间存在'to-many'关系,因此place.category
是NSMutableSet
对象而不是Category
对象
试试这个
NSMutableSet *categorySet = place.category;
foreach (Category *category in categorySet)
{
NSString *catId = category.catId;
NSLog(@"catId: %@", catId);
}