猿问

数据透视表没有附加 Laravel 关系

这是我的代码:


Project::find($project)->users()->attach($user)// $project = '1', $user = '2'

和错误:


SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value (SQL: insert into `project_user` (`project_id`) values (2))

如果您需要迁移


Schema::create('project_user', function(Blueprint $table)

    {

        $table->increments('id');

        $table->bigInteger('project_id')->unsigned();

        $table->bigInteger('user_id')->unsigned();

可能是什么问题呢?


郎朗坤
浏览 120回答 1
1回答

汪汪一只猫

看起来您的关系签名有误,请确保如下所示:// In your Project modelpublic function users(){    return $this->belongsToMany('App\User', 'project_user', 'project_id', 'user_id');}
随时随地看视频慕课网APP
我要回答