2016-11-16 4 views
0

Laravel 5.3に問題があります。Laravel 5.3の既存のテーブルの列を削除できませんか?

既存のテーブルから列を削除することはできません。私は 'composer require doctrine/dbal'を実行していますが、うまくいきましたが、私のコラムは削除されません。

マイadd_column_to_tableコード:

<?php 

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

class AddColumnToTable extends Migration 
{ 
    /** 
    * Run the migrations. 
    * 
    * @return void 
    */ 
    public function up() 
    { 
     Schema::table('users', function (Blueprint $table) 
     { 
      $table->string('avatar')->default('default.pngs'); 
     }); 
    } 

    /** 
    * Reverse the migrations. 
    * 
    * @return void 
    */ 
    public function down() 
    { 
     Schema::table('users', function ($table) 
     { 
      $table->dropColumn('avatar'); 
     }); 
    } 
} 

おかげ

+0

どのようなエラーが表示されますか – user2693928

+0

代わりに 'removeColumn()'を試してください。 – Mihailo

+0

これが効果を発揮するかどうかは分かりませんが、一般的には、列を追加(または変更)する際には一般に「Blueprint」は使用されません。 – jackel414

答えて

1

php artisan migrate:rollback 
+0

はい、私が持っていた問題は、私はちょうど 'php artisan migrate' – Jay

0

この試してみてください、次のように移行をロールバックする必要が列を削除するには:

public function down() 
{ 
    Schema::table('users', function (Blueprint $table) 
    { 
     $table->dropColumn('avatar'); 
    }); 
    } 
} 
0

移行をロールバックする必要があります。

php artisan migrate:rollback 

ただし、テーブルの列が空であることを確認してください。

関連する問題