Make Soft Deleted Relationships Nullable (#1749)

This commit is contained in:
Evan Burrell
2026-01-11 14:34:18 +01:00
committed by GitHub
parent 2ac73f2953
commit b0dcd7c62f
9 changed files with 381 additions and 0 deletions
@@ -0,0 +1,38 @@
<?php
declare(strict_types=1);
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class SoftDeletesRelationsTable extends Migration
{
public function up(): void
{
Schema::create('soft_deletable_models', function (Blueprint $table) {
$table->bigIncrements('id');
$table->unsignedBigInteger('model_with_relations_id')->nullable();
$table->softDeletes();
});
Schema::create('non_soft_deletable_models', function (Blueprint $table) {
$table->bigIncrements('id');
$table->unsignedBigInteger('model_with_relations_id')->nullable();
});
Schema::create('models_with_relations', function (Blueprint $table) {
$table->bigIncrements('id');
$table->unsignedBigInteger('soft_deletable_model_id');
$table->unsignedBigInteger('non_soft_deletable_model_id');
$table->foreign('soft_deletable_model_id')
->references('id')
->on('soft_deletable_models');
$table->foreign('non_soft_deletable_model_id')
->references('id')
->on('non_soft_deletable_models');
});
}
}