Heim > Fragen und Antworten > Hauptteil
Kannst du mir helfen? Ich möchte dabei sein posts
表中添加一个在categories
表中有引用的外键。但是当我输入命令php artisan migrate:fresh
时,它总是失败。我得到的错误信息是这样的PDOException::("SQLSTATE[HY000]: General error: 1005 Can't create table 'handconsulting'.'posts' (errno: 150 "Foreignkey constraint is incorrectly formed")")
Das ist meine posts
Uhr
Schema::create('posts', function (Blueprint $table) { $table->id(); $table->string('title'); $table->foreignId('category_id')->constrained('categories')->onDelete('cascade')->onUpdate('cascade'); $table->string('slug')->unique(); $table->text('excerpt'); $table->text('body'); $table->string('iamge')->nullable(); $table->timestamp('published_at')->nullable(); $table->timestamps(); });
Das ist meine categories
Uhr
Schema::create('categories', function (Blueprint $table) { $table->engine = 'InnoDB'; $table->id(); $table->string('name')->unique(); $table->string('slug')->unique(); $table->timestamps(); });
P粉2259617492023-09-09 16:44:04
this is my approach:
$table->unsignedBigInteger('category_id'); $table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade')->onUpdate('cascade');