2017-04-11 10 views
0

イムは私のアプリでは、いくつかの移行を作成するが、誤差を与えているの移行します。カントは、外部キーを持つ表

私の移行で問題が見つかりました。

Schema::create('articles', function (Blueprint $table) { 
    $table->increments('id'); 
    $table->boolean('online'); 
    $table->timestamps(); 
}); 

Schema::create('article_translations', function (Blueprint $table) { 
    $table->increments('id'); 
    $table->integer('article_id')->unsigned(); 
    $table->string('locale')->index(); 

    $table->string('name'); 
    $table->text('text'); 

    $table->unique(['article_id','locale']); 
    $table->foreign('article_id')->references('id')->on('articles')->onDelete('cascade'); 
}); 
+1

これらは同じファイルですか?私は通常、別々の移行で各テーブルを持っています。 – Mick

+0

彼らは別のファイルにあります – Pedro

+0

@Mickと私はそれが良い習慣だと思います。ニートコーディング –

答えて

1

あなたは別にそれを試してみませんか?このように

Schema::table('article_translations', function($table) 
{  
    $table->foreign('article_id')->references('id')->on('articles')->onDelete('cascade'); 
}); 
+0

これは私が行うことです、私は両方のテーブルを作成し、私の別のファイルにすべての私の外部キーを追加します。 – Mick

+0

まだ問題はありますか? br/ –

+0

それはうまくいったのですが、なぜ同じファイルでその作業ができなかったのですか? – Pedro

関連する問題