laravel表格增刪改查

laravel 是一個流行的 php 框架,它提供了方便的工具和功能來幫助開發人員快速構建 web 應用程序。其中一個基本功能是使用表格增刪改查數據,本文將介紹如何在 laravel 中實現這些功能。

  1. 創建數據庫和表格

首先,我們需要創建一個數據庫和一個數據表來存儲數據。在本文中,我們將創建一個名為“users”的表格,它包含以下字段: id、name、email 和 password。

我們可以使用 Laravel 中的遷移來創建表格。在命令行中運行以下命令:

php artisan make:migration create_users_table --create=users

運行該命令后,Laravel 將在“database/migrations”目錄中創建一個新的遷移文件。我們可以在遷移文件中使用“Schema”類來定義表格結構。其代碼如下:

use IlluminateDatabaseMigrationsMigration; use IlluminateDatabaseSchemaBlueprint; use IlluminateSupportFacadesSchema;  class CreateUsersTable extends Migration {     /**      * Run the migrations.      *      * @return void      */     public function up()     {         Schema::create('users', function (Blueprint $table) {             $table->increments('id');             $table->string('name');             $table->string('email')->unique();             $table->string('password');             $table->timestamps();         });     }      /**      * Reverse the migrations.      *      * @return void      */     public function down()     {         Schema::dropIfExists('users');     } }

以上代碼創建了一個名為“users”的表格,其中包含 id、name、email、password 和 timestamps 字段。

當我們運行遷移時,Laravel 將在數據庫中創建表格。運行以下命令進行遷移:

php artisan migrate
  1. 增加記錄

要向表格中添加記錄,我們需要創建一個控制器并使用模型來將數據保存到數據庫中。在命令行中運行以下命令:

php artisan make:controller UserController

該命令將在“app/http/Controllers”目錄中創建一個新的“UserController”控制器。

在控制器文件中,我們可以使用“create”方法來保存新記錄。以下是示例代碼:

use AppUser; use IlluminateHttpRequest;  class UserController extends Controller {     public function store(Request $request)     {         $user = User::create([             'name' => $request->input('name'),             'email' => $request->input('email'),             'password' => bcrypt($request->input('password')),         ]);          return response()->json([             'message' => 'User created successfully',             'user' => $user,         ]);     } }

在以上代碼中,我們首先導入“User”模型,然后在“store”方法中使用“create”方法來創建新記錄。我們將請求中的“name”、“email”和“password”字段用作參數,并使用“bcrypt”函數將密碼加密。最后,我們返回一個 JSON 響應,其中包含創建的用戶記錄。

  1. 列出記錄

我們可以使用控制器來獲取表格中的所有記錄并將其返回給用戶。在控制器中添加以下代碼:

public function index() {     $users = User::all();      return view('users.index', ['users' => $users]); }

以上代碼通過使用“all”方法獲取用戶表格中的所有記錄,并將結果傳遞給視圖。我們可以在視圖中使用這些數據來渲染 html 表格。

  1. 更新記錄

與創建記錄時類似,我們可以使用模型和控制器來更新記錄。以下是一個示例“update”方法:

public function update(Request $request, $id) {     $user = User::find($id);      $user->name = $request->input('name');     $user->email = $request->input('email');      if ($request->input('password')) {         $user->password = bcrypt($request->input('password'));     }      $user->save();      return response()->json([         'message' => 'User updated successfully',         'user' => $user,     ]); }

在以上代碼中,我們首先使用“find”方法獲取指定 ID 的用戶記錄。然后,我們將請求中的“name”和“email”字段用作屬性值來更新記錄。如果請求包含“password”字段,則使用“bcrypt”函數將其加密并更新用戶記錄。最后,我們使用“save”方法保存記錄,并返回更新后的用戶記錄作為 JSON 響應。

  1. 刪除記錄

我們可以使用控制器和模型來刪除用戶記錄。以下是一個示例的“destroy”方法:

public function destroy($id) {     $user = User::find($id);      $user->delete();      return response()->json([         'message' => 'User deleted successfully',     ]); }

在以上代碼中,我們首先使用“find”方法獲取指定 ID 的用戶記錄。然后,在使用“delete”方法刪除記錄之前,我們可以對該記錄執行其他操作。最后,我們返回一個 JSON 響應,其中包含有關已刪除用戶的信息。

  1. 表格視圖

對于列出所有用戶記錄的情況,我們可以使用視圖來渲染 HTML 表格。以下是一個示例視圖代碼:


@foreach ($users as $user)

@endforeach

ID Name Email Action
{{ $user->id }} {{ $user->name }} {{ $user->email }} Edit

{{ csrf_field() }} {{ method_field(‘DELETE’) }}

在以上代碼中,我們使用“@foreach”指令來循環遍歷所有用戶記錄,并在 HTML 表格中顯示它們的 ID、名稱和電子郵件。此外,我們添加了兩個操作列:編輯和刪除。對于刪除,我們使用一個表單來提交 DELETE 請求,并使用“csrf_field”指令添加 CSRF 令牌。對于編輯,我們在路由中定義單獨的視圖和控制器。

  1. 結論

在本文中,我們介紹了如何使用 Laravel 中的模型和控制器來執行基本的表格增刪改查操作。雖然在實際項目中可能涉及更多的功能和細節,但本文提供了一個起點來幫助您開始使用 Laravel 來處理 Web 應用程序的表格操作。

? 版權聲明
THE END
喜歡就支持一下吧
點贊7 分享