dropConstrainedForeignId('template_id'); }); Schema::dropIfExists('meet_templates'); } public function down(): void { Schema::create('meet_templates', function (Blueprint $table) { $table->id(); $table->uuid('uuid')->unique(); $table->string('owner_ref')->index(); $table->foreignId('organization_id')->constrained('meet_organizations')->cascadeOnDelete(); $table->string('name'); $table->text('description')->nullable(); $table->unsignedSmallInteger('duration_minutes')->default(60); $table->json('settings')->nullable(); $table->boolean('is_default')->default(false); $table->timestamps(); $table->softDeletes(); }); Schema::table('meet_rooms', function (Blueprint $table) { $table->foreignId('template_id')->nullable()->after('source')->constrained('meet_templates')->nullOnDelete(); }); } };