Sommario
Laravel ci aiuta a lavorare con il database semplificando il linguaggio SQL, non dobbiamo più fare domande se non lo vogliamo, utilizzando il tuo ORM EloquenteCon questo, possiamo anche lavorare su sistemi di relazione molto più complessi tra tabelle senza dover effettuare una singola query diretta al database.Per ottenere ciò dobbiamo stabilire gli identificatori che sono associati e incorporare nel modello anche un tipo di attributo che indica tale relazione.
Il primo passo che dobbiamo compiere per creare il relazione molti a molti è generare la tabella intermedia, deve contenere i campi che la mettono in relazione con le tabelle primarie, per questo dobbiamo seguire i seguenti passaggi:
1- Genereremo la migrazione usando artigiano con il seguente comando:
php craft migrate: make create_show_user
2- In questo caso stiamo generando una tabella che combinerà una tabella chiamata Mostrare e il tavolo Utente della nostra applicazione.
3- Poi nel up() metodo Genereremo i campi della tabella, con questo ogni volta che eseguiremo la migrazione verrà creata la tabella:
1- Nel file Mostra.php nel percorso app/modelli posizioneremo quanto segue:
3- Ora creeremo un file per la tabella Mostra, in esso ripeteremo la stessa cosa ma associandolo a Utente:
Creeremo un percorso in cui inseriremo un utente e a questo assegneremo gli spettacoli, per questo dobbiamo creare l'oggetto del Modello utente e fare un inserimento di un record, quindi chiameremo il metodo Spettacoli () con cui possiamo assegnare il nuovo record, vediamo:
Con questo abbiamo creato la tabella intermedia e abbiamo creato una relazione molti a molti in modo basilare, tuttavia questo non è nemmeno l'1% di ciò che possiamo ottenere, ovviamente la ricerca e la pratica sono la chiave.
Con questo finiamo questo tutorial, abbiamo già costruito la nostra relazione molti a molti in Eloquente senza la necessità di eseguire una singola query SQL direttamente sul nostro database.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo