現在、テーブルに特定の列を作成するための移行を書いていますnullable
。not nullable
down 関数については、もちろん、それらの列をもう一度作成したいと思います。スキーマ ビルダーのドキュメントを調べましたが、これを行う方法がわかりませんでした。
どんな助けでも大歓迎です。
現在、テーブルに特定の列を作成するための移行を書いていますnullable
。not nullable
down 関数については、もちろん、それらの列をもう一度作成したいと思います。スキーマ ビルダーのドキュメントを調べましたが、これを行う方法がわかりませんでした。
どんな助けでも大歓迎です。
Laravel 5 より前は、スキーマ ビルダーを使用して既存のテーブル列を変更する Laravel ネイティブの方法はありませんでした。これには生のクエリを使用する必要があります。
ただし、Laravel 5 以降では以下を使用できます。
$table->string('foo')->nullable(false)->change();
上記のコマンドを実行する前に、dbal 依存関係が必要です。
composer require doctrine/dbal
Laravel 5 では、引数として false を渡すことで、これを逆にすることができますnullable
。
$table->string('foo')->nullable(false)->change();
最初にこれを実行します:
composer require doctrine/dbal
次に、次のようにテーブルを変更する移行を作成します。
php artisan make:migration fix_whatever_table_name_here
public function up()
{
Schema::table('table_name', function (Blueprint $table) {
$table->type('column')->nullable(false)->change();
});
}
# Optional:
# public function down()
# {
# Schema::table('table_name', function ($table) {
# $table->type('column')->nullable()->change();
# });
# }