操作无法完成。 (可可错误 1560。)

Posted

技术标签:

【中文标题】操作无法完成。 (可可错误 1560。)【英文标题】:The operation couldn’t be completed. (Cocoa error 1560.) 【发布时间】:2012-06-13 15:48:32 【问题描述】:

我在我的应用程序中使用核心数据。

使用可转换属性存储 NSArray 时出现此错误。

简而言之,我想知道,我应该如何将 NSArray 存储到核心数据中。

以及如何检索它。

这是我的代码。

#import <CoreData/CoreData.h>

@class category;

@interface qrandom :  NSManagedObject  



@property (nonatomic, retain) NSArray* arr;
@property (nonatomic, retain) category * cid;

@end

.................................................. ....................................

#import "qrandom.h"

#import "category.h"

@implementation qrandom 

@dynamic arr;
@dynamic cid;

@end

.................................................. .....................

category.h 文件

#import <CoreData/CoreData.h>

@class qrandom;

@interface category :  NSManagedObject  


@property (nonatomic, retain) NSNumber * cid;
@property (nonatomic, retain) qrandom * randomrelation;

@end

.................................................. ....................................

category.m 文件

#import "category.h"
#import "qrandom.h"

@implementation category

@dynamic cid;
@dynamic randomrelation;

@end

.................................................. ..................................

【问题讨论】:

你能把错误信息的完整内容贴出来吗?您的问题确实没有足够的信息来提供有用的答案。什么对多关系不足以存储数组的元素? 【参考方案1】:

基本上直接将NSArrayNSDictionary 存储为可转换属性在CoreData 中不起作用,因为它将无法检索数组的值。

请参阅 Marcus 的回答,该回答建议仅使用关系:

NSMutableArray stored with core data = WORKS, but after changing array DOESN'T WORK

但是!

您可以归档您的数组,以便在您的托管对象中使用它。在此处查看 jbrennan 的回复: Saving an NSMutableArray to Core Data

【讨论】:

以上是关于操作无法完成。 (可可错误 1560。)的主要内容,如果未能解决你的问题,请参考以下文章

操作无法完成。 (可可错误 260。)

保存到数据存储失败:操作无法完成。 (可可错误 133020。)

Swift Core 数据无法第二次存储数据:Cocoa 错误 1560

由于可可豆荚中的内部保护错误快速类功能而无法访问

可可无法连接动作

可可绑定错误