我对FetchRequest模板有一个奇怪的问题。
当我明确地硬编码我想要替换的变量时:
NSFetchRequest *fetchRequest = [[[Helper appDelegate] managedObjectModel]
fetchRequestFromTemplateWithName:@"srStoryForLesson"
substitutionVariables:[NSDictionary dictionaryWithObject:[NSNumber numberWithInt:2] forKey:@"number"]];
每件事都很好。
但是当我尝试将var设置为整数(因为我希望它是动态的)时,我得不到fetch的结果。
NSInteger number = 2;
NSFetchRequest *fetchRequest = [[[Helper appDelegate] managedObjectModel]
fetchRequestFromTemplateWithName:@"srStoryForLesson"
substitutionVariables:[NSDictionary dictionaryWithObject:[NSNumber numberWithInt:number] forKey:@"number"]];
我无法理解有什么问题?
由于 沙尼
答案 0 :(得分:1)
您展示的代码应该可以正常工作。您的错误在其他地方。
我建议不要使用像“number”这样的变量名,因为它们的通用性质会在Objective-C的全局名称空间中命名冲突。当您重新访问代码时,更具独特性和描述性的名称将更安全,更容易阅读。