Campi Extra In Una Relazione Many To Many

Ciao a tutti,

come posso salvare/aggiornare dei campi extra nella tabella pivot di una relazione MANY to MANY (sto usando GIIX per creare il model e le operazioni di CRUD)?

Esempio:

UTENTI

id_utente

username

ESAMI

id_esame

esame

UTENTI_X_ESAMI

id_utente

id_esame

voto (questo è un campo extra chiave primarie)

data (un altro…)

Come gestisco i campi extra nelle view di inserimento/modifica?

Grazie,

Lilli

quando ho avuto a che fare con relazioni di tipo many_many e come

nel tuo caso avevo dei campi extra sulla relazione… tipo data

ho impostato normalmente le due has_one o belongs_to per i perni della many_many

perchè nell’implementazione di yii non si tiene conto dell’eventualità di avere campi aggiuntivi,

ai quali per l’appunto non puoi accedere.

Hanno interpretato la relazione in modo canonico con i soli due perni.

puoi postare un esempio pratico di codice? io ormai ho fatto tutto con giix e creare i modelli e i controller da capo sarebbe un vero delirio per me.

giix nel caso di many_many crea un model per la tabella pivot e due relazioni del tipo:

‘esamis’ => array(self::MANY_MANY, ‘Esami’, ‘utenti_x_esami(id_utente, id_esame)’)

nel model dell’utente

e

‘utentis’ => array(self::MANY_MANY, ‘Utenti’, ‘utenti_x_esami(id_utente, id_esame)’)

nel model dell’esame

poi utilizza una funzione saveWithRelated che però tiene in considerazione solo le pk

grazie,

lilli

aggiungi in utente ed esame la relazione utenti_esami:


'utenti_esami'=>array(self::HAS_MANY, 'Utenti_x_esami', 'id_utente')