Ошибка миграции laravel 1215
Я делаю миграции и у меня ошибка: * SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table contacts add constraint contacts_service_id_foreign foreign key (service_id) references services (id) on delete cascade)*
Вот миграция:
`class CreateContactsTable extends Migration{
public function up()
{
// Список контактов
Schema::create('contacts', function (Blueprint $table) {
$table->id();
$table->integer('service_id')->comment('Ссылка на сервис');
$table->integer('contact_type_id')->comment('Тип контакта');
$table->string('value')->comment('Значение контакта (номер телефона, email, имя, etc.)');
$table->timestampsTz();
$table->foreign('service_id')
->references('id')->on('services')
->onDelete('cascade');
$table->foreign('contact_type_id')
->references('id')->on('contact_types')
->onDelete('restrict');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('contacts');
}
}`
Я понимаю, что у меня может быть порядок создания foreign нарушен?
Ответы (1 шт):
Автор решения: Yaroslav Molchan
→ Ссылка
У вас реляция ссылается на PK другой таблицы, а в Laravel уже пару версий PK это unsignedBigInteger, так что в вашем случае нужно заменить колонку:
$table->integer('service_id')->comment('Ссылка на сервис');
На:
$table->unsignedBigInteger('service_id')->comment('Ссылка на сервис');