2016-04-25 16 views
5

Ad esempio, ho una tabella di cars, ognuno ha uno model e uno make. Un'auto può avere solo uno di ciascuno, e c'è una tabella di models e makes, con i loro ID generati automaticamente. Posso fare riferimento a questi nella mia tabella cars? Come sarebbe il JSON?modo di modellare una relazione uno-a-uno nello schema?

Ho cercato di creare un nuovo campo nella tabella cars e specificare id nella casella di testo "Via", ma semplicemente crea una nuova colonna nella tabella corrispondente, id1. C'è un modo corretto?

Ecco il mio campione schema JSON:

{ 
    "name": "cars", 
    "fields": { 
     "model": { 
     "object": "models" 
     }, 
     "make": { 
     "object": "makes" 
     } 
    } 
    }, 
    { 
    "name": "models", 
    "fields": { 
     "title": { 
     "type": "string" 
     }, 
     "make": { 
     "object": "makes" 
     }, 
     "id": { 
     "collection": "cars", 
     "via": "model" 
     } 
    } 
    }, 
    { 
    "name": "makes", 
    "fields": { 
     "models": { 
     "collection": "models", 
     "via": "make" 
     }, 
     "title": { 
     "type": "string" 
     }, 
     "id": { 
     "collection": "cars", 
     "via": "make" 
     } 
    } 
    } 

risposta

3

In Indietro & non v'è alcuna relazione uno-a-uno, per definizione, ma ti abbiamo cercando è uno-a-molti e quasi ce l'ha, vedi il seguente Modello che funziona. Nel modello qui sotto una macchina può avere un modello singolo e una singola marca (ovviamente una marca e modelli possono avere molte macchine - questa è la parte più lunga):

{ 
    "name": "cars", 
    "fields": { 
    "model": { 
     "object": "models" 
    }, 
    "make": { 
     "object": "makes" 
    } 
    } 
}, 
{ 
    "name": "models", 
    "fields": { 
    "cars": { 
     "collection": "cars", 
     "via": "model" 
    }, 
    "title": { 
     "type": "string" 
    }, 
    "make": { 
     "object": "makes" 
    } 
    } 
}, 
{ 
    "name": "makes", 
    "fields": { 
    "cars": { 
     "collection": "cars", 
     "via": "make" 
    }, 
    "models": { 
     "collection": "models", 
     "via": "make" 
    }, 
    "title": { 
     "type": "string" 
    } 
    } 
} 
Problemi correlati