gpt4 book ai didi

ios - 核心数据与同一实体的关系

转载 作者:行者123 更新时间:2023-11-29 02:56:22 25 4
gpt4 key购买 nike

我一直在使用归档,我正在切换到 Core Data——但是,我不知道如何实现我想添加到数据库中的某个实体。

这是我不使用 Core Data 编写头文件的方式...

@interface SELCase : NSObject <NSCoding>

@property (nonatomic) NSString *name;
@property (nonatomic) NSString *caseKey;
@property (nonatomic) BOOL individual;
@property (nonatomic) float indivAmount;
@property (nonatomic) SELCase *indivType;

@end

每次加载的数据是姓名、caseKey 和个人。如果 individual 为 YES,则结束,但如果不是 individual,则将加载 indivAmount 和 indivType。

问题是我需要与另一个 SELCase 建立关系,但我不知道该怎么做。有什么帮助吗?

最佳答案

只需创建一个指向同一实体的关系即可。

这是一个例子:

@property (nonatomic, retain) NSString * goalName;
@property (nonatomic, retain) NSData * goalPicture;
@property (nonatomic, retain) NSNumber * indexOrder;
@property (nonatomic, retain) NSNumber * wordPicture;
@property (nonatomic, retain) NSSet *item;
@property (nonatomic, retain) Goal *parent;
@property (nonatomic, retain) NSSet *subGoals;
@property (nonatomic, retain) User *user;
@property (nonatomic, retain) NSSet *video;
@property (nonatomic, retain) NSSet *stats;
@end

@interface Goal (CoreDataGeneratedAccessors)

- (void)addItemObject:(Item *)value;
- (void)removeItemObject:(Item *)value;
- (void)addItem:(NSSet *)values;
- (void)removeItem:(NSSet *)values;

- (void)addSubGoalsObject:(Goal *)value;
- (void)removeSubGoalsObject:(Goal *)value;
- (void)addSubGoals:(NSSet *)values;
- (void)removeSubGoals:(NSSet *)values;

- (void)addVideoObject:(Video *)value;
- (void)removeVideoObject:(Video *)value;
- (void)addVideo:(NSSet *)values;
- (void)removeVideo:(NSSet *)values;

- (void)addStatsObject:(Stats *)value;
- (void)removeStatsObject:(Stats *)value;
- (void)addStats:(NSSet *)values;
- (void)removeStats:(NSSet *)values;

在这种情况下,子目标是由相同类型的实体组成的集合。

在您的模型中,您只需建立指向同一实体的关系(一个/一个、一个/多个,等等)。

关于ios - 核心数据与同一实体的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23858180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com