Сбой для одной из моих таблиц завершается с ошибкой
Подсветка \ База данных \ QueryException: SQLSTATE [HY000]: Общая ошибка: 1364 Поле 'id' не имеет значения по умолчанию значение (SQL: вставить в tests
(name
, description
, panel_id
, units
, minValue
, lowNote
, maxValue
, highNote
, note_id
) значения (отношение A / G, отношение альбумина к глобулину, 2, 1,2, 2,5,, 1))
Обратите внимание, что поле id
пропускается?
Вот метод миграции up()
:
public function up()
{
Schema::create('tests', function (Blueprint $table) {
$table->unsignedBigInteger('id');
$table->string('name');
$table->string('description');
$table->unsignedBigInteger('panel_id');
$table->string('units');
$table->string('minValue');
$table->string('lowNote',512);
$table->string('maxValue');
$table->string('highNote',512);
$table->unsignedBigInteger('note_id');
});
}
Вот часть метода TestSeeder::run()
:
$tests = [
[
'id' => 1,
'name' => 'A/G Ratio',
'description' => 'Albumin to Globulin Ratio',
'panel_id' => 2,
'units' => '',
'minValue' => '1.2',
'lowNote' => '',
'maxValue' => '2.5',
'highNote' => '',
'note_id' => 1
],
];
Вот модель Test
:
class Test extends Model
{
public $timestamps = false;
protected $fillable = [
'id',
'name',
'description',
'panel_id',
'units',
'minValue',
'lowNote',
'maxValue',
'high_note',
'note_id'
];
}
Обратите внимание, что поле id
указано в массиве $fillable
, так почему оно пропускается?