2017-12-30 57 views
1

移行コマンドを実行中にエラーが発生します。外部キー制約が正しく構成されていません。エラーLaravel 5.5

これは、管理テーブルスキーマ

Schema::create('admin', function (Blueprint $table) { 
       $table->increments('id'); 
       $table->integer('user_id')->unique(); 

       $table->timestamps(); 

       $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade')->onUpdate('cascade'); 
      }); 

、他方はlaravelのインストールに付属しているユーザテーブルです。私はuser_idのための外部キーを作成したいが、それは誤り

答えて

2

すべてのまず第一を与える

、あなたがusers 1の後に、この移行を実行していることを確認してください。

はまた、これを変更:

$table->integer('user_id')->unique(); 

へ:

$table->unsignedInteger('user_id'); 
+0

のthnx、それは動作しますが、それはUSER_IDにunsignedIntegerを追加することが義務付けられていますか? – Raj

+0

@Rajはい、あなたは 'unsignedInteger()'または 'integer() - > unsigned()'を使う必要があります –

関連する問題