我正在创建一个应用程序,其中有几个实体,现在我需要动态过滤第三个组合框的内容。我能更好地解释我自己。我有3个组合框(建筑物,楼层和部门),我想首先向我展示所有的建筑物包括在内,但第二个应该只显示选择之前的建筑物的平面图,最后我应该只选择建筑物的部门和您选择的计划。我该怎么做呢?为了简化一些照片的附加。



发布于 2012-11-26 23:28:27
如果您使用单个fetch请求来获取核心数据,则只需使用谓词向下钻取即可。
但是,您的关系设置不正确。例如,Particelle中有一个edificio属性。如果它引用一座建筑物,那么它应该是与Edifici对象的关系,而不是某种外键。Core Data中没有外键,只有关系。
如果这样做,那么使用NSFetchedResultsController就会变得容易得多。您现在可以简单地遍历对象图,而不需要任何特定的抓取。
方案可能是这样的(可能需要更改顺序):
Anno <--->> Particella <---->> Edificio <---->> AreaRischio现在,您可以简单地告诉fetched results控制器开始获取所有Anno实体。然后使用简单的点符号向下钻取:
NSSet *listForNextTable = selectedAnnoObject.particelle; 并进一步介绍了
NSSet *listForNextTable = selectedParticellaObject.edifici;等等。你看,事情变得非常简单。
https://stackoverflow.com/questions/13561554
复制相似问题