Почему поле name не переставляется на первое место?

Рейтинг: 0Ответов: 0Опубликовано: 29.04.2023

И так я продолжаю постигать прелести работы с Laravel, в этот раз я споткнулся на работе с миграциями, а конкретно на изменении порядка расстановки полей в таблице. Я создал новый миграционный файл следующего содержания:

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class ChangeUsers6Table extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('users', function (Blueprint $table){
            $table->string('name')->first()->change();
            $table->string('sex')->after('id');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        //
    }
}

Как можно понять из кода, в моей таблице уже был столбец 'name' и ещё не было столбца 'sex'. По итогу запуска миграций я получил следующее:

введите сюда описание изображения

А именно, столбец 'sex', как я и хотел встал после 'id', а вот 'name' почему-то не сдвинулся с места. Объясните, пожалуйста, что я делаю не так и как надо делать.

Ответы

Ответов пока нет.