public function up():void
{
Schema::create('blog_categories', static function (Blueprint $table) {
$table->id();
$table->bigInteger('parent_id')->unsigned()->default(1);
$table->string('slug')->unique();
$table->string('title');
$table->text('description')->nullable();
$table->timestamps();
$table->softDeletes();
});
}
public function up(): void
{
Schema::create('blog_posts', static function (Blueprint $table) {
$table->id();
$table->bigInteger('category_id')->unsigned();
$table->bigInteger('user_id')->unsigned();
$table->string('slug')->unique();
$table->string('title');
$table->text('excerpt')->nullable();
$table->string('tdk_title')->nullable();
$table->text('tdk_description')->nullable();
$table->text('tdk_keywords')->nullable();
$table->text('content_raw');
$table->text('content_html');
$table->integer('view_count')->default(0);
$table->boolean('is_published')->default(false);
$table->timestamp('published_at')->nullable();
$table->timestamps();
$table->softDeletes();
$table->index('is_published');
//FK
$table->foreign('user_id')
->references('id')
->on('users')
->onDelete('cascade');
$table->foreign('category_id')
->references('id')
->on('blog_categories')
->onDelete('cascade');
});
}
Удалить категорию и переместить все связанные посты в корневую. Вот тут я забуксовал, как правильно реализовать?
// Перемещаем посты из удаляемой категории в основную
$category->posts()->update(['category_id' => 1]);
// Удаляем категорию
$category->delete();