小编Sha*_*sin的帖子

Laravel 8 外键

我尝试迁移具有外键的表。每次我迁移表时都会产生一个错误,内容如下:

一般错误:1215 无法添加外键约束

这是我的表迁移:

Schema::create('profile_pictures', function (Blueprint $table) {
    $table->bigIncrements('id');
    $table->bigInteger('user_id')->nullable();
    $table->binary('image')->nullable();
    $table->timestamps();

    $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
});
Run Code Online (Sandbox Code Playgroud)

这是我的模型:

class ProfilePicture extends Model
{
    protected $fillable = [
        'user_id',
        'image'
    ];

    public function user()
    {
        $this->belongsTo(User::class, 'user_id', 'id');
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的用户表迁移:

Schema::create('users', function (Blueprint $table) {
    $table->bigIncrements('id');
    $table->string('username');
    $table->string('first_name')->nullable();
    $table->string('last_name')->nullable();
    $table->string('email')->unique();
    $table->string('phone')->nullable();
    $table->timestamp('email_verified_at')->nullable();
    $table->string('password');
    $table->rememberToken();
    $table->timestamps();
});
Run Code Online (Sandbox Code Playgroud)

migration laravel laravel-8

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

laravel ×1

laravel-8 ×1

migration ×1