id(); $table->string('title'); $table->text('content'); $table->string('type')->default('info'); // info, success, warning, danger $table->boolean('is_active')->default(true); $table->timestamp('starts_at')->nullable(); $table->timestamp('ends_at')->nullable(); $table->unsignedBigInteger('created_by')->nullable(); $table->timestamps(); $table->foreign('created_by')->references('id')->on('users')->onDelete('set null'); }); } /** * Reverse the migrations. */ public function down(): void { Schema::dropIfExists('announcements'); } };