エラー概要
storeメソッドでDBへデータを挿入する際に、
エラー「General error: 1364 Field 'カラム名' doesn't have a default value ...」
が出た。
結論
migrate時にカラムのnullを許容していなかった。
対応
データ挿入前だったので、
nullable()を追記して、ロールバックしてmigrateをやり直した。
ターミナル
$ php artisan migrate:status
$ php artisan migrate:rollback --step=1
migrationファイル
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddImgToDbnameTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('dbname', function (Blueprint $table) {
- $table->string("file_name")->after('content');
+ $table->string("file_name")->after('content')-->nullable();
- $table->string("file_path")->after('content');
+ $table->string("file_path")->after('content')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('dbname', function (Blueprint $table) {
$table->dropColumn("file_name");
$table->dropColumn("file_path");
});
}
}
ターミナル
$ php artisan migrate