2010-12-09 68 views
0

我有两个实体:比赛和球员,我已经建立了一个中间表matchplayer作为球员可以玩多场比赛,比赛将有多个球员。我认为我可以分别添加,修改和删除两个比赛和球员,但我对如何填充matchman实体感到困惑。我已经建立了matchplayer实体,没有任何属性,但与match和player实体都有关系。如何存储两个coredata记录之间的“关系”?

我有一个管理比赛细节的视图,并从那里加载所有球员的桌面视图,我可以选择我想要“连接”比赛的球员。但那是我卡住的地方。我将什么添加到matchplayer实体来存储关系?

回答

0

您不需要创建一个单独的实体来维护关系。
你可以做的是维持从比赛实体到玩家实体的许多关系。
假设名称与playerInMatch的关系。现在,您在匹配实体中插入的每个managedObjectContext匹配,可以使用addPlayerInMatch:方法(即创建模态类时自动生成的访问器方法)将多个玩家插入此managedObjectContext。
现在,在特定比赛的回归中,您可以通过其关系来回顾该比赛的一整套球员。使用该选项,您可以删除或添加任何球员到该组。
(我简要地解释你的想法,希望您在使用核心数据有清醒的认识relationship.If你是不是具有核心数据清透看看下面的教程:
http://cocoadevcentral.com/articles/000085.php

+0

感谢您的答复我明白了什么你说关于丢弃matchplayer实体并创建多对多关系,使用acessor,我只是将它设置为managedobjectcontext?所以如果我选择一个播放器,我使用“addMatch”设置为匹配记录的托管对象上下文有兴趣吗? – lps 2010-12-09 14:14:46

相关问题