2011-10-26 11 views
0

FetchRequestテンプレートで奇妙な問題が発生しました。FetchRequestテンプレートが動的変数と連携していません

NSFetchRequest *fetchRequest = [[[Helper appDelegate] managedObjectModel] 
           fetchRequestFromTemplateWithName:@"srStoryForLesson" 
           substitutionVariables:[NSDictionary dictionaryWithObject:[NSNumber numberWithInt:2] forKey:@"number"]]; 

すべてのものが正常に動作します:私は明示的に変数をハードコーディングするとき

は、私が代わりにしたいです。

しかし、整数としてvarを設定しようとすると(私はそれが動的になりたいので)、フェッチの結果は得られません。

NSInteger number = 2; 

NSFetchRequest *fetchRequest = [[[Helper appDelegate] managedObjectModel] 
           fetchRequestFromTemplateWithName:@"srStoryForLesson" 
           substitutionVariables:[NSDictionary dictionaryWithObject:[NSNumber numberWithInt:number] forKey:@"number"]]; 

何が間違っているのですか?

おかげ シャニー

答えて

1

あなたが正常に動作する必要があります示したコード。あなたのエラーは他の場所です。

Objective-Cのグローバルネームスペースで一般的な性質のネーミングの衝突が発生する可能性があるため、 "number"のような変数名を使用しないことをお勧めします。もっとユニークでわかりやすい名前は、あなたがコードに再度アクセスしたときに、より安全で、数か月後に読むのが簡単です。

関連する問題