Depuis increments()
crée une colonne d'entiers non signés, vous devez également définir la colonne de clé étrangère comme un entier non signé.
Les migrations par défaut dans Laravel 6+ utilisent bigIncrements()
, vous devez donc utiliser unsignedBigInteger()
méthode :
$table->unsignedBigInteger('order_id');
https://laravel.com/docs/6.x/migrations #foreign-key-constraints
Pour les migrations par défaut dans les anciennes versions de Laravel, utilisez unsignedInteger()
méthode :
$table->unsignedInteger('order_id');
Ou :
$table->integer('order_id')->unsigned();
https://laravel.com/docs/5.5/migrations#foreign-key -contraintes