Laravel 9 Eloquent OrderBy query

Laravel 9 Eloquent OrderBy query
Laravel 9 ha una caratteristica eccellente chiamata Eloquent. È un ORM (mappatura oggetto-relazionale) e aiuta gli utenti a comunicare tra le applicazioni ai database molto facilmente. In Laravel 9, quando usiamo Eloquent, funziona come un "modello" e comunica con il database. Ti aiuta a ottenere dati dalla tabella nel database.

In Laravel 9, ci sono diversi modi per ottenere dati per ordine. Un modo è mostrato di seguito:

-> Orderby

Oggi impareremo come usare OrderBy in Laravel e quando usarlo.

Orderby in Laravel

In Laravel 9, quando dobbiamo ordinare la nostra raccolta di dati in declino o ascendente dal database. Quindi dobbiamo usare un ordine nella query Laravel. Nelle normali query MySQL, lo usiamo come mostrato di seguito:

Seleziona * da 'Collection' dove 'Stato' = 'Something' Order per 'Collection_id ASC

Ma Laravel ha un modo diverso di assegnare quanto segue:

-> orderby ('collection_id', 'ASC')

I requisiti del progetto sono riportati di seguito:

  • Mysql 8.0+
  • Mariadb 10.2+
  • PHP 8.1

Ecco un esempio di definizione della query OrderBy:

  1. Process1. Crea un progetto OrderBy
  2. Processo 2. Connessione del database
  3. Processo 3. Applica il metodo OrderBy
  4. Processo 4. Esegui e testa il progetto OrderBy

Processo 1. Crea un progetto OrderBy

Ora, dobbiamo eseguire questo comando per creare questo progetto:

Compositore crea-project laravel/laravel orderbyproject

Processo 2. Connessione del database

Apri il .File ENV sul progetto OrderByProject e aggiungi nuovi dettagli sul database.

Ecco il seguente codice:

Db_connection = mysql
Db_host = 127.0.0.1
Db_port = 3306
Db_database = nome del database
Db_username = nome utente del database
DB_Password = password del database

Controlla la seguente immagine:

Processo 3. Applica il metodo OrderBy

Prima di applicare OrderBy al nostro progetto, dovremo creare una tabella di database per il nostro database. Per questo, creeremo una tabella chiamata "CollectionList". Dobbiamo eseguire il seguente comando per creare la tabella:

PHP Artisan Make: ModelCollectionList -m

Il codice è fornito di seguito:

restituire la nuova classe estende la migrazione

funzione pubblica up ()

Schema :: create ('Collection_Lists', Function (Blueprint $ Table)
$ table-> id (); //Incremento automatico
$ table-> timestamps ();
);

funzione pubblica down ()

Schema :: Dropifexists ('Collection_Lists');

;

Devo aggiungere questi due al seguente codice:

$ table-> string ('name')-> nulllable ();
$ table-> longtext ('dettagli')-> nulllable ();

Migriamo i dati nel database. Esegui il seguente comando:

PHP Artisan Migrate

Quindi, crea un controller per gestire la funzione con la query.

Qui, abbiamo creato un controller chiamato "CollectionList" per il nostro progetto OrderBy. Dobbiamo eseguire questo comando per creare il seguente progetto:

PHP Artisan Make: ControlleCollectionList

Il codice dovrebbe apparire così:

APPPACE NAME \ HTTP \ Controller;
Usa Illuminate \ http \ richiesta;
La collezione di classe estende il controller

//

Ora, devo creare una funzione nel controller:

Il nome della funzione è AllCollection.

Dopo aver aggiunto questa funzione, dovrebbe apparire come segue:

APPPACE NAME \ HTTP \ Controller;
Utilizzare l'app \ Models \ CollectionList come ModelScollectionList;
Usa Illuminate \ http \ richiesta;
La collezione di classe estende il controller

Funzione pubblica AllCollection ()

$ AllData = ModelSCollectionList :: Orderby ("id", "ASC")-> get ();
return view ('welcome', compact ('Alldata'));

Per il metodo get (), dobbiamo utilizzare i dati in ordine crescente:

$ AllData = ModelSCollectionList :: Orderby ("Id", "ASC")->
Ottenere();

Per ottenere i dati in ordine decrescente, dobbiamo utilizzare quanto segue:

$ allData = ModelSCollectionList :: Orderby ("id", "desc")-> get ();

Aggiungi una vista nella cartella Resource \ Visualizza chiamata Welcome.lama.PHP.





>