laravellaravel-migrations

Laravel migrations change a column type from varchar to longText


I need to change with a migration column type of $table->string('text'); to a text type, I have tried to do that in a few ways, but none of them worked. Is it possible to do it in one migration? I could I guess drop the column and then create it again with a new type, but I wonder if it is possible to do it in one migration?


Solution

  • You can create a new migration and change just one column type:

    public function up()
    {
        Schema::table('sometable', function (Blueprint $table) {
            $table->text('text')->change();
        });
    }
    

    You need to install doctrine/dbal to make this work

    composer require doctrine/dbal
    

    Works with Laravel 5.0+. It does not work with Laravel 4.2.