Одна вещь, о которой вам нужно знать о миграции, заключается в том, что они выполняются до тех пор, пока они не сбой или не удастся, следуя вашему примеру:
Schema::table('bill_payments', function (Blueprint $table) {
$table->dropColumn('attachment');
});
//It will drop the column and stop here. When you run the migration again, it will output your error because the column no longer exists.
dd(Schema::hasColumn('bill_payments', 'attachment')); // Return false
Что вы должны иметь в своем коде перехода, имеет обратные операции в Down (). Если вы выполняете миграцию, она применяет Up (), и когда вы откатываетесь, она возвращается правильно. Эта ошибка на самом деле означает, что это означает, что когда она достигает операции, связанной с таблицей bill_payments
и столбцом attachment
, она распознает, что attachment
не существует.
Редактировать:
В документации есть что-то связанное с SQlite: