Точная ошибка, которую я получаю:
SQLSTATE [HY000]: общая ошибка: 1215 Невозможно добавить ограничение внешнего ключа (SQL: изменить таблицу
course_userдобавить ограничениеcourse_user_course_code_foreignвнешний ключ (course_code) ссылается наcourses(code))
Я прочитал много решений, но, похоже, ни одно из них не решило мою проблему. Я пытался;
- Вручную указав ядро базы данных.
- Отделение создания таблицы от реализации внешнего ключа
- Проверено, что типы одинаковы
Вот моя миграция course_user
public function up()
    {
        Schema::create('course_user', function (Blueprint $table) {
            $table->engine = 'InnoDB';
            $table->integer('user_id')->unsigned();
            $table->string('course_code');
        });
        Schema::table('course_user', function (Blueprint $table) {
            $table->engine = 'InnoDB';
            $table->foreign('user_id')->references('id')->on('users');
            $table->foreign('course_code')->references('code')->on('courses');
            $table->timestamps();
            //$table->primary(['user_id', 'course_code']);
        });
    }
Вот мой course миграции
public function up()
    {
        Schema::create('courses', function (Blueprint $table) {
            //$table->increments('id');
            $table->increments('id');
            $table->string('code');
            $table->string('name');
            $table->timestamps();
        });
    }
