Я хочу создать категорию для компании, но у меня есть эта ошибка:
SQLSTATE [HY000]: общая ошибка: 1005 Невозможно создать таблицу sanat
. #sql-53e_e7d
(номер ошибки: 150 «Неправильно сформировано ограничение внешнего ключа») (SQL: изменить таблицу company_category
добавить ограничение company_category_company_id_foreign
внешний ключ ( company_id
) ссылки companies
(id
) на каскад удаления)
это мой код миграции для категории:
public function up()
{
Schema::create('categories', function (Blueprint $table) {
$table->increments('id')->unsigned();
$table->string('name');
$table->string('slug');
$table->string('description')->nullable();
$table->string('type');
$table->string('imageUrl')->nullable();
$table->timestamps();
});
Schema::create('article_category', function (Blueprint $table) {
$table->integer('article_id')->unsigned();
$table->foreign('article_id')->references('id')->on('articles')->onDelete('cascade');
$table->integer('category_id')->unsigned();
$table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade');
$table->primary(['article_id', 'category_id']);
});
Schema::create('company_category', function (Blueprint $table) {
$table->integer('company_id')->unsigned();
$table->foreign('company_id')->references('id')->on('companies')->onDelete('cascade');
$table->integer('category_id')->unsigned();
$table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade');
$table->primary(['company_id', 'category_id']);
});
}
так что таблицы компании и таблицы категорий не создаются.
когда я уберу это:
Schema::create('company_category', function (Blueprint $table) {
$table->integer('company_id')->unsigned();
$table->foreign('company_id')->references('id')->on('companies')->onDelete('cascade');
$table->integer('category_id')->unsigned();
$table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade');
$table->primary(['company_id', 'category_id']);
});
php artisan migrate работал.
где проблема
это миграция моей компании:
Schema::create('companies', function (Blueprint $table) {
$table->increments('id')->unsigned();
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->boolean('active')->default(false);
$table->string('name');
$table->string('email')->unique();
$table->string('slug');
$table->text('aboutUs');
$table->integer('tell');
$table->string('address');
$table->string('tag');
$table->string('logoUrl');
$table->string('slideUrl')->unique();
$table->string('facebookUrl');
$table->string('instagramUrl');
$table->string('telegramUrl');
$table->string('whatsAppUrl');
$table->string('websiteUrl');
$table->timestamps();
});