Laravel - Elimina record

Possiamo eliminare il record utilizzando il DB facciata con il deletemetodo. La sintassi del metodo di eliminazione è mostrata nella tabella seguente.

Sintassi int cancella (stringa $ query, array $ bindings = array ())
Parametri
  • $ query (stringa) - query da eseguire nel database
  • $ bindings (array) - valori da associare alle query
ritorna int
Descrizione Eseguire un'istruzione di eliminazione sul database.

Esempio

Step 1 - Esegui il comando seguente per creare un controller chiamato StudDeleteController.

php artisan make:controller StudDeleteController --plain

Step 2 - Dopo aver eseguito con successo, riceverai il seguente output -

Step 3 - Copia il seguente codice su file

app/Http/Controllers/StudDeleteController.php

app/Http/Controllers/StudDeleteController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class StudDeleteController extends Controller {
   public function index() {
      $users = DB::select('select * from student');
      return view('stud_delete_view',['users'=>$users]);
   }
   public function destroy($id) {
      DB::delete('delete from student where id = ?',[$id]);
      echo "Record deleted successfully.<br/>";
      echo '<a href = "/delete-records">Click Here</a> to go back.';
   }
}

Step 4 - Crea un file di visualizzazione chiamato

resources/views/stud_delete_view.blade.php e copia il codice seguente in quel file.

resources/views/stud_delete_view.blade.php

<html>
   
   <head>
      <title>View Student Records</title>
   </head>
   
   <body>
      <table border = "1">
         <tr>
            <td>ID</td>
            <td>Name</td>
            <td>Edit</td>
         </tr>
         @foreach ($users as $user)
         <tr>
            <td>{{ $user->id }}</td>
            <td>{{ $user->name }}</td>
            <td><a href = 'delete/{{ $user->id }}'>Delete</a></td>
         </tr>
         @endforeach
      </table>
   </body>
</html>

Step 5 - Aggiungi le seguenti righe app/Http/routes.php.

app/Http/routes.php

Route::get('delete-records','[email protected]');
Route::get('delete/{id}','[email protected]');

Step 6 −L'output apparirà come mostrato nell'immagine seguente.

Step 7- Fare clic sul collegamento Elimina per eliminare quel record dal database. Verrai reindirizzato a una pagina in cui vedrai un messaggio come mostrato nell'immagine seguente.

Step 8 - Fare clic su “Click Here” link e verrai reindirizzato ad una pagina dove vedrai tutti i record tranne quello cancellato.