【发布时间】:2013-09-30 00:20:38
【问题描述】:
我有几个实体,一个名为“List”,一个名为“Task”。两者都有多个属性,并且只有 1 个关系。 list 属性有一个名为 hasTasks 的一对多关系,其目的地是任务。
这是为我生成的 Task.h 文件。
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@class Task;
@interface List : NSManagedObject
@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSNumber * number;
@property (nonatomic, retain) NSNumber * tasks;
@property (nonatomic, retain) NSNumber * totalTime;
@property (nonatomic, retain) NSSet *hasTasks;
@end
@interface List (CoreDataGeneratedAccessors)
- (void)addHasTasksObject:(Task *)value;
- (void)removeHasTasksObject:(Task *)value;
- (void)addHasTasks:(NSSet *)values;
- (void)removeHasTasks:(NSSet *)values;
@end
每当我运行一行代码时,例如:
[self.list addHasTasksObject:task];
它使我的应用程序崩溃而没有任何错误消息。任何帮助,将不胜感激。
【问题讨论】:
-
Task是否设置为与List有关系?另外,如果你只是做task.list = list会发生什么? -
是任务设置为与列表有关系,但尝试设置该关系也会导致应用程序崩溃。执行 task.list = list 将不起作用,因为 list 不是属性或关系的名称。
-
添加异常断点以了解异常信息
-
我做了,它只是告诉我断点在代码行 [self.list addHasTasksObject:task];并且控制台中没有打印出错误。
-
通过 NSLogging 确保
self.list和task都是有效对象。还要检查它们是否具有相同的context属性。
标签: objective-c cocoa-touch core-data