id(); $table->unsignedBigInteger('category_id')->nullable(); $table->string('title'); $table->string('slug')->unique(); $table->string('summary')->nullable(); $table->text('body')->nullable(); $table->string('cover')->nullable(); $table->string('author')->nullable(); $table->string('status')->default('published'); // published | draft $table->timestamp('published_at')->nullable(); $table->timestamps(); $table->softDeletes(); $table->foreign('category_id')->references('id')->on('categories')->onDelete('set null'); }); } public function down(): void { Schema::dropIfExists('articles'); } };