gpt4 book ai didi

ios - 神奇的记录1到多关系 objective-c

转载 作者:行者123 更新时间:2023-11-28 22:31:43 25 4
gpt4 key购买 nike

我正在使用 Magical Record用于 Xcode 的数据库。我有两个实体,一个名为“任务”,另一个名为“评论”,我想建立一种关系,以便在查询任务时一个任务具有一系列评论,是否可能,我是神奇的新手记录一下,希望我让问题变得容易理解。谢谢。

编辑:嘿,谢谢你的帮助,我用这段代码把评论放在任务中:

NSManagedObjectContext *localContext = [NSManagedObjectContext MR_defaultContext];  
TarefaMR *task = [TarefaMR MR_createInContext:localContext]; task.

//...

for (NSDictionary *comment in [tarefa objectForKey:@"comments"]) { NSManagedObjectContext *localContext3 = [NSManagedObjectContext MR_defaultContext];
ComentarioMR *comment = [ComentarioMR MR_createInContext:localContext3];
[localContext3 MR_saveToPersistentStoreAndWait];
[task addComentariosObject:comment]; }

[localContext MR_saveToPersistentStoreAndWait];

但现在我尝试访问它,但我似乎无法从任务的评论中获取数据,

我使用的代码:

for (TarefaMR *tarefa in [TarefaMR MR_findAll];)  {   
NSLog(@"tarefa.comentarios %@",tarefa.comentarios); }

我得到一个

tarefa.comentarios Relationship 'comentarios' fault on managed object : comentarios = ;

我已经尝试在 for 中循环 tarefa.commentarios,但似乎没有得到任何东西,如果我查询评论数据库,对象就在那里。

然后我尝试使用:

for (ComentarioMR *comment in tarefa.comentarios) { 
NSLog(@"comment listHeader %@", comment.listHeader);
NSLog(@"comment listText %@", comment.listText); }

如何获取任务的评论?

最佳答案

MagicalRecord 只是 Core Data 的包装器。您使用 Xcode 中的核心数据模型编辑器定义您的实体及其关系。您可以通过在 Xcode 中单击名为 [your project's name].xcdatamodeld 的文件来访问此工具。如果您没有这样的文件,您需要先创建一个。

在此可视化编辑器中,您可以创建实体并向它们添加属性和关系。然后您可以选择您的关系之一,转到 Xcode 中的检查器,其图标由一个小数据库表示的部分,然后勾选“对多关系”框。

如果您不知道 Core Data 是如何工作的,我建议您阅读 Core Data Programming Guide或者至少找到一些解释其工作原理的教程。

关于ios - 神奇的记录1到多关系 objective-c ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17237820/

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