laravel-migrations
1
总安装量
1
周安装量
#49271
全站排名
安装命令
npx skills add https://github.com/fusengine/agents --skill laravel-migrations
Agent 安装分布
amp
1
antigravity
1
gemini-cli
1
Skill 文档
Laravel Migrations
Documentation
Database
- database.md – Database basics
- migrations.md – Migrations
- seeding.md – Database seeding
- queries.md – Query builder
- mongodb.md – MongoDB integration
Migration Template
<?php
declare(strict_types=1);
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->foreignId('user_id')->constrained()->cascadeOnDelete();
$table->string('title');
$table->string('slug')->unique();
$table->text('content');
$table->string('status')->default('draft');
$table->timestamp('published_at')->nullable();
$table->timestamps();
$table->softDeletes();
$table->index(['status', 'published_at']);
});
}
public function down(): void
{
Schema::dropIfExists('posts');
}
};
Column Types
$table->string('name', 100); // VARCHAR(100)
$table->text('description'); // TEXT
$table->integer('count'); // INT
$table->decimal('price', 8, 2); // DECIMAL(8,2)
$table->boolean('is_active'); // BOOLEAN
$table->json('metadata'); // JSON
$table->timestamps(); // created_at, updated_at
$table->softDeletes(); // deleted_at
Foreign Keys
$table->foreignId('user_id')->constrained()->cascadeOnDelete();
$table->foreignId('author_id')->constrained('users')->nullOnDelete();
Seeder
<?php
declare(strict_types=1);
namespace Database\Seeders;
final class PostSeeder extends Seeder
{
public function run(): void
{
User::factory()->count(10)->create()->each(function (User $user) {
Post::factory()->count(5)->for($user)->create();
});
}
}
Commands
php artisan make:migration create_posts_table
php artisan migrate
php artisan migrate:fresh --seed
php artisan migrate:rollback --step=3