【发布时间】:2014-02-12 15:27:02
【问题描述】:
我正在使用核心数据制作一个简单的日记应用。
主模型(期刊)将包含标题和正文。 每个条目可以有一个或多个标签。
要插入一个新的(期刊),我只是这样做:
Journal *newJournal [NSEntityDescription insertNewObjectForEntityForName:@"Journal"
inManagedObjectContext:context];
//Save
问题一:给条目添加标签的正确方法是什么?
我可以这样做:
Tag *tag1 = [NSEntityDescription insertNewObjectForEntityForName:@"Tag"
inManagedObjectContext:context];
Tag *tag2 = [NSEntityDescription insertNewObjectForEntityForName:@"Tag"
inManagedObjectContext:context];
newJournalEntry.tags = [[NSOrderedSet alloc] initWithObjects:tag1,tag2,nil];
// Save card...
... 但这将为每个条目创建新标签。我只需要核心数据模型中每个标签的唯一实例。
问题2:如何按标签查询日记条目,例如“获取所有具有fun标签的日记条目”
我还需要获取所有创建的标签并显示它们,例如:“你有 3 个标签:Fun、sport、vacation”
【问题讨论】:
-
一次提出 1 个问题。为什么你们的关系不是多对多的?您是否生成了托管对象子类(它们有哪些方法)?您是否尝试过运行任何获取请求?
标签: ios objective-c core-data