2012-11-04 16 views
0

我在coredata的工作模式有兩個實體: - 客戶 - 發票coredata覆蓋設定值的關係

客戶有「發票」屬性(1對多)和發票具有「客戶」屬性(1到1)。 一切工作,直到我重寫發票類的「setCustomer」方法。 我寫這篇文章的代碼

-(void)setCustomer:(Customer *)customer { 
    [self willChangeValueForKey:@"Customer"]; 
    [self setPrimitiveValue:customer forKey:@"Customer"]; 
    [self didChangeValueForKey:@"Customer"]; 
    [self recalulatePriceAndDiscounts]; 
} 

其中「recalculatePriceAndDiscount」是我自己的方法,我需要我的時候選擇不同的客戶打電話。

當我使用此代碼時,反向關係(customer-> invoices)不是立即可用的,我需要關閉並重新打開我的應用程序以查看客戶的發票。

還有一些其他方法需要調用?

感謝

回答

0

如果屬性被稱爲「客戶」(用小寫字母「C」),那麼你必須使用它作爲重點,例如

[self willChangeValueForKey:@"customer"]; 
// ... etc. 
+0

我能說什麼?我從星期天開始工作10個小時:) – IgnazioC