我试图用外键创建一个简单的表,该表引用Laravel的默认“用户”表。
迁移成功运行,但是当我在PHPMyAdmin中看到新创建的表时,它没有显示外键。
这是我的简单迁移文件:
Schema::create('larachat_chat_rooms', function (Blueprint $table) {
$table->increments('id');
$table->unsignedBigInteger('creator_id')->references('id')->on('users')->onDelete('cascade');
$table->timestamps();
$table->softDeletes();
});
答案 0 :(得分:1)
从phpmyadmin转到特定表=>“操作”选项卡=>“表选项” =>将Storage Engine更改为innoDB保存并返回到表中,您将看到关系视图
答案 1 :(得分:1)
您可以尝试运行php artisan migrate
Schema::create('larachat_chat_rooms', function (Blueprint $table) {
$table->increments('id');
$table->unsignedBigInteger('creator_id');
$table->softDeletes();
$table->timestamps();
$table->foreign('creator_id')->references('id')->on('users')->onDelete('cascade');
});
,请告诉我它是否适合您。我对此的想法是,您需要首先创建该列,然后可以将其指定为外键。请参阅doc