dropForeign(['subuser_id']); $table->foreign('subuser_id')->references('id')->on('subusers')->onDelete('cascade'); }); Schema::table('subusers', function (Blueprint $table) { $table->dropForeign(['user_id']); $table->dropForeign(['server_id']); $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); $table->foreign('server_id')->references('id')->on('servers')->onDelete('cascade'); }); } /** * Reverse the migrations. */ public function down() { Schema::table('subusers', function (Blueprint $table) { $table->dropForeign(['user_id']); $table->dropForeign(['server_id']); $table->foreign('user_id')->references('id')->on('users'); $table->foreign('server_id')->references('id')->on('servers'); }); Schema::table('permissions', function (Blueprint $table) { $table->dropForeign(['subuser_id']); $table->foreign('subuser_id')->references('id')->on('subusers'); }); } }