Laravel - 刪除記錄



我們可以使用DB外觀和delete方法刪除記錄。delete方法的語法如下表所示。

語法 int delete(string $query, array $bindings = array())
引數
  • $query(字串) − 在資料庫中執行的查詢
  • $bindings(陣列) − 與查詢繫結的值
返回值 int
描述 對資料庫執行刪除語句。

示例

步驟 1 − 執行以下命令建立一個名為StudDeleteController的控制器。

php artisan make:controller StudDeleteController --plain

步驟 2 − 執行成功後,您將收到以下輸出:

Delete Records

步驟 3 − 將以下程式碼複製到檔案

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.';
   }
}

步驟 4 − 建立一個名為

resources/views/stud_delete_view.blade.php 的檢視檔案,並將以下程式碼複製到該檔案中。

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>

步驟 5 − 在app/Http/routes.php中新增以下幾行。

app/Http/routes.php

Route::get('delete-records','StudDeleteController@index');
Route::get('delete/{id}','StudDeleteController@destroy');

步驟 6 − 輸出將如下圖所示。

Name Edit

步驟 7 − 點選刪除連結從資料庫中刪除該記錄。您將被重定向到一個頁面,您將看到如下所示的訊息。

Record Deleted

步驟 8 − 點選“點選此處”連結,您將被重定向到一個頁面,您將看到除已刪除記錄之外的所有記錄。

Records
laravel_working_with_database.htm
廣告