2014-09-02 20 views
5

sto lottando per capire i diversi tipi di associazioni di dati in ExtJS e non riuscivo a capire questo:ExtJS 5 hasMany vs field.reference

Qual è la differenza tra "hasMany" e "field.reference "quando si definiscono le associazioni su due modelli?

Quando devo usare "hasMany" e quando è "riferimento" meglio?

Ad esempio, se desidero definire più indirizzi di posta elettronica per un utente, qual è la procedura migliore in modo da poter utilizzare il modello di posta elettronica anche altrove?

Sono consapevole che ho 3 domande, ma queste sembrano appartenere insieme.

Grazie!

+0

Direi che molti non sopravvivranno in ExtJS 6. – Alexander

+0

Sono nella stessa situazione. In questo momentoMany non sembra funzionare correttamente in ExtJS 5.0.1 –

+1

@benoror ci sono sicuramente stati problemi con esso che sono continuati in 5.1.1 – Thomas

risposta

8

Uno dei migliori guasti su questo che ho visto è qui:

http://moduscreate.com/associations-in-ext-js-5/

Si va in un sacco di dettagli, e si rivolge specificamente la terza domanda per quanto riguarda indirizzi e-mail - perché l'associazione è ora definito sul modello figlio piuttosto che sul modello genitore, devi avere un modello di email diverso se vuoi collegarlo a un genitore diverso, cioè una classe CustomerEmail da allegare al Cliente e una classe AdminEmail da allegare all'Admin.

C'è un po 'di dettaglio per il motivo del cambiamento qui:

associazioni

http://www.sencha.com/blog/deep-dive-into-ext-js-5-data

Dichiarazione è un altro settore in Ext JS 5 dove abbiamo ridotto i requisiti del codice boilerplate. Nelle versioni precedenti, il hasMany, hasOne e belongsTo ha richiesto di eseguire manualmente le dichiarazioni simmetriche su entrambi i "lati" di un'associazione. Questo non è più il caso. È possibile dichiarare un'associazione in delle classi associate (sebbene in genere sul lato "molti").

+1

Mi sono appena imbattuto in quella risorsa Modus Create. È davvero fantastico. – Thomas