/ / Core Data Relationship Design? - obiettivo-c, xcode, core-data, xcode4

Core Data Relationship Design? - obiettivo-c, xcode, core-data, xcode4

Ho una domanda sul modo in cui crei le relazioni in Core Data.

Spiegherò con un esempio:

Diciamo che ho 3 entità: motore, pompa e avviso.

Motore e pompa possono inviare avvisi.

L'entità di avvertenza memorizzerà tutti gli avvisi di Motore e Pompa.

Quindi la domanda è ... È davvero necessario creare così tante relazioni in Warning for Motor and Pump? Quando voglio aggiungere un'altra entità che può inviare avvisi, avrò bisogno di un'altra relazione.

Questo non sarebbe un cattivo design?

Spero di essere comprensibile.

Grazie.

risposte:

2 per risposta № 1

Sì, è normale. Un approccio migliore e più strutturato è quello di avere un'entità di base per Motore e Pompa, chiamiamola Componente. Questa entità componente ha la relazione con Avvertenze e l'entità di avviso ha una relazione inversa a Componente.

Quindi si imposta Motore e Pompa come discendenti dell'entità Componente e tutto è buono. Una relazione singola / relazione inversa tra Componente e Avviso.


2 per risposta № 2

Questo è standard e buona pratica. I dati fondamentali richiedono relazioni inverse per tutto ciò che mantiene il suo oggetto grafico. (Beh, tecnicamente non devi aggiungerli, ma devi fare un lavoro extra da solo).

Quindi non ti preoccupare, è normale che le tue entità usate spesso abbiano molte relazioni inverse su di esse.