2011-11-14 38 views
1

我有一個簡單的模型,它代表了天餐和培訓課程。我遇到了從CoreData獲取日期的問題。我收到以下錯誤。上該找取請求的執行發生核心數據和查找日期的問題

2011-11-14 11:41:44.999 CalorificCounter[21002:fb03] -[__NSCFString timeIntervalSinceReferenceDate]: unrecognized selector sent to instance 0x6a6d1a0 
2011-11-14 11:41:45.001 CalorificCounter[21002:fb03] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString timeIntervalSinceReferenceDate]: unrecognized selector sent to instance 0x6a6d1a0' 

代碼

-(Day *)getDayForDate:(NSDate *)date 
{ 
    Day *day; 
    date = [self dateAtStartOfDay:date]; 

    NSFetchRequest *request = [[NSFetchRequest alloc]init]; 
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Day" 
             inManagedObjectContext:[self managedObjectContext]]; 

    //Find the object that matches the given date from a predicate 
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date == \"%@\"",date]; 


    [request setEntity:entity]; 
    [request setPredicate:predicate]; 

    //Try to fetch 
    NSError *error; 
    NSArray *result = [[self managedObjectContext] executeFetchRequest:request 
                  error:&error ] ; 

該錯誤。我追蹤了執行,一切似乎都是正確的類型(至少我從來沒有傳過一個字符串)。提前致謝。

UPDATE不要把斷言日期引號

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date == %@",date]; 
+0

您的數據存儲可能有問題。出於某種原因,它期待着一個日期,當它實際上得到一個字符串。再給你的商店看看。 – drharris

+0

我正在發送一個日期,但它正在獲取一個字符串。是的,這裏的類型有問題。 – botptr

+0

你解決了這個問題嗎? – newenglander

回答

0

,當你有一個指定的字符串到日期對象也會出現此問題。檢查日期值並返回一個NSDate對象