在 Laravel 中,數據庫遷移和數據填充是一種非常方便的方式來管理數據庫結構和插入初始數據。以下是如何使用 Laravel 數據庫遷移和數據填充的步驟:
首先,你需要創建一個遷移文件來定義數據庫表結構。你可以使用 Artisan 命令行工具來創建遷移文件:
php artisan make:migration create_users_table --create=users
這將會創建一個名為 create_users_table
的遷移文件,通常位于 database/migrations
目錄下。
打開遷移文件并定義表結構。例如:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('users');
}
}
接下來,你需要運行遷移來創建表結構:
php artisan migrate
你可以使用 Artisan 命令行工具來創建一個數據填充文件:
php artisan make:seeder UsersTableSeeder
這將會創建一個名為 UsersTableSeeder
的數據填充文件,通常位于 database/seeders
目錄下。
打開數據填充文件并定義要插入的數據。例如:
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use App\Models\User;
class UsersTableSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
// 讓模型工廠創建一些用戶
User::factory(10)->create();
}
}
最后,你需要運行數據填充來插入初始數據:
php artisan db:seed
通過以上步驟,你已經成功創建了一個數據庫遷移文件來定義表結構,并使用數據填充文件插入了初始數據。你可以根據需要重復這些步驟來管理數據庫結構和插入更多數據。