io sono nuovo di zecca per laravel ed eloquente (e ho esperienza minima con ORM in generale).Eloquente/laravel tre vie molti-a-molti
Diciamo che ho tre tabelle del database:
- Widgets
- azioni
- Utenti
ho modellato una tabella di giunzione che ha le colonne per:
widget_id
action_id
user_id
- timestamp
Il punto della giunzione è quello di mantenere un registro di interazioni - prendere un timestamp ogni volta che esegue un user
action
su un widget
. Vedo come modellare una semplice relazione molti-a-molti usando Eloquent e funziona bene, ma non sono sicuro di come modellare una relazione a tre vie più complicata.
Del resto, anche se ho avuto un rapporto semplicemente molti-a-molti (diciamo widget
-action
così ci sarebbe un tavolo chiamato action_widget
), come posso aggiungere un modello esplicito per la tabella action_widget
in Eloquente, per lo scopo di tenere traccia dei dati extra relativi a ciascuna relazione (ad esempio un timestamp, un campo di commenti, ecc.). O, sto solo andando su questo in un modo totalmente sbagliato?
Essendo nuovo ORM, mi sento molto confinato da quello che posso fare! Questa sensazione va via? : P
Grazie, l'utilizzo di un modello personalizzato sembra decisamente la soluzione migliore qui. – Raolin
Potresti spiegare un po 'come andresti su questo? Sto affrontando un problema simile, ma non ne so abbastanza su Eloquent per seguirlo e i documenti non sono abbastanza buoni. – Mcg1978
hasManyThrough non funziona per questo caso. Perché hasManyThrough non restituisce la relazione ma solo il valore del terzo attributo. – Mesuti