dthok9648 2019-08-11 20:39
浏览 53
已采纳

枢轴表没有附加laravel关系

here's my code:

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

and the error:

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

and if you need migration

Schema::create('project_user', function(Blueprint $table)
    {
        $table->increments('id');
        $table->bigInteger('project_id')->unsigned();
        $table->bigInteger('user_id')->unsigned();

What could be the problem?

  • 写回答

1条回答 默认 最新

  • douping4436 2019-08-11 21:07
    关注

    It looks like you have an error in your relationship signature, make sure it's as below:

    // In your Project model
    
    public function users()
    {
        return $this->belongsToMany('App\User', 'project_user', 'project_id', 'user_id');
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?