| 123456789101112131415161718192021222324252627 |
- <?php
- use Illuminate\Database\Migrations\Migration;
- use Illuminate\Database\Schema\Blueprint;
- use Illuminate\Support\Facades\Schema;
- // Привязка блоков к страницам с произвольным порядком отображения.
- // Один блок может быть добавлен на несколько страниц — уникальность (page_id, block_id).
- return new class extends Migration
- {
- public function up(): void
- {
- Schema::create('page_sections', function (Blueprint $table) {
- $table->id();
- $table->foreignId('page_id')->constrained()->cascadeOnDelete();
- $table->foreignId('block_id')->constrained()->cascadeOnDelete();
- $table->unsignedInteger('sort_order')->default(0); // позиция блока на странице
- $table->unique(['page_id', 'block_id']);
- $table->timestamps();
- });
- }
- public function down(): void
- {
- Schema::dropIfExists('page_sections');
- }
- };
|