2012-02-18 77 views
0

为什么不能正常工作......?对象图关系

我在核心数据模型中有一个'Client'实体和一个'Car'实体。这是一对多的关系。我从桌面视图控制器中选择了一个“客户端”,并推送了一个新的桌面视图控制器,该控制器应显示客户拥有的所有汽车牌照。

基于在StackOverflow的其他答案的信息,我已经整理了以下短代码踢出来的汽车在表视图控制器的单元格来显示的名称:

NSSet *cars = client.cars; 
carsArray = [cars allObjects]; 
Car *car = (Car *)[carsArray objectAtIndex:indexPath.row]; 
cell.textLabel.text = [car carName]; 

然而,这是不工作。任何人都能看到为什么它编译好。仅供参考 - '客户'是所选的客户对象; carsArray是在viewcontroller头文件中声明的NSArray,Car有一个名为'carName'的属性。

回答

2

什么错误,你得到&

你是哪里的新“推视图控制器”调用此?您需要在tableView数据源方法设置之前创建carsArray。

当然,请确保“client”的传递实体不为零。

这可能是在viewDidLoad或一些初始化。

NSSet *cars = client.cars; 
carsArray = [cars allObjects]; 

下可以在cellForRow ..

Car *car = (Car *)[carsArray objectAtIndex:indexPath.row]; 
cell.textLabel.text = [car carName]; 
+0

权......这是一个愚蠢的错误...我在我的tableViewController返回0部分。这段代码确实有效。道歉! – 2012-02-19 13:15:56