Objective c 试图设置导致崩溃的核心数据关系

Objective c 试图设置导致崩溃的核心数据关系,objective-c,cocoa-touch,core-data,Objective C,Cocoa Touch,Core Data,我有几个实体,一个名为“列表”,一个名为“任务”。两者都有多个属性,只有一个关系。list属性具有名为hasTasks的多对多关系,其目标是task 这是为我生成的Task.h文件 #import <Foundation/Foundation.h> #import <CoreData/CoreData.h> @class Task; @interface List : NSManagedObject @property (nonatomic, retain) NSS

我有几个实体,一个名为“列表”,一个名为“任务”。两者都有多个属性,只有一个关系。list属性具有名为hasTasks的多对多关系,其目标是task

这是为我生成的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

它使我的应用程序崩溃,但没有任何错误消息。任何帮助都将不胜感激

我遇到了同样的问题,我在.xcdatamodeld文件中修复了它。我在没有重新生成NSManagedObject类的情况下意外选中了关系的ordered arrangement复选框。取消选中此框并重新构建为我解决了此问题。如果仍有问题,请尝试重新生成NSManagedObject类。

是否将
任务设置为与
列表有关系?另外,如果您只是执行
task.list=list
,会发生什么情况?Yes task设置为与list有关系,但尝试设置该关系也会使应用程序崩溃。Doing task.list=list将不起作用,因为list不是属性或关系的名称。请为添加一个异常断点以了解我所做的异常消息,它只告诉我断点位于代码行[self.list addhasstasksobject:task];并且控制台中没有打印错误。通过记录
self.list
task
来确保它们都是有效的对象。还要检查它们是否具有相同的
上下文
属性。
[self.list addHasTasksObject:task];