Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pplrPmClEn 111 of 252 menu
◀ ▶

Колонка ENUM в миграциях Laravel

Когда поле может принимать только несколько заранее известных значений, удобен метод enum. Вторым параметром передают список допустимых вариантов:

<?php $table->enum('status', ['draft', 'published']); ?>

База данных не примет значение вне списка. В примере поле status может быть только draft или published.

Пример миграции таблицы постов со статусом:

<?php public function up(): void { Schema::create('posts', function (Blueprint $table) { $table->id(); $table->string('title'); $table->text('text'); $table->enum('status', ['draft', 'published']); $table->timestamps(); }); } ?>

Тип ENUM подходит для статусов заказа, роли пользователя, типа записи. Если вариантов много и они часто меняются, иногда удобнее отдельная таблица-справочник и связь через внешний ключ.

Добавьте в таблицу с постами поле status со значениями draft и published.

Когда enum удобнее, а когда boolean?

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить