Ik had hetzelfde probleem. Repareerde het door nullable
toe te voegen naar veld:
Schema::create('table_name', function (Blueprint $table) {
...
$table->integer('some_id')->unsigned()->nullable();
$table->foreign('some_id')->references('id')->on('other_table');
...
});
Merk op dat na de migratie alle bestaande rijen some_id = NULL
. zullen hebben .
UPD :
Sinds Laravel 7 is er een kortere manier om hetzelfde te doen:
$table->foreignId('some_id')->nullable()->constrained();
Het is ook erg belangrijk dat nullable
gaat VOORDAT constrained
.
Meer info vind je hier, in officiële documentatie