我在可视化编辑器中为我的核心数据模型创建了一个获取请求“MyRequest”(您也可以在其中直观地添加实体)。既然已经创建了获取请求,我该如何向它添加排序描述符?如果我以编程方式从托管对象模型中检索它,它不允许我向它添加排序描述符,因为它说我不允许对模型中的不可变对象进行更改。 ..
答案 0 :(得分:3)
fetchRequestTemplateForName:
返回一个不可变的提取请求,因为它存储在
model,但fetchRequestFromTemplateWithName:substitutionVariables:
创建了一个可以修改的新提取请求。
如果您没有任何替换变量,则可以使用空字典 参数:
NSFetchRequest *request = [managedObjectModel fetchRequestFromTemplateWithName:@"name" substitutionVariables:@{}];
NSSortDescriptor *desc = ...;
[request setSortDescriptors:@[desc]];