eloquent:检查数据透视表中的现有数据(主键+额外列)

时间:2017-03-09 07:41:02

标签: php laravel eloquent pivot extra

我有一个带有额外列的数据透视表。我需要在更新额外列之前检查此表中是否存在数据对。 这里有两个问题,首先我该如何检查?

我试过像

这样的东西
If ($user->pivot_table->contains($key, '&&', $extra_column)){}

无济于事。

其次,如何更新数据透视图中的额外列?

1 个答案:

答案 0 :(得分:0)

//这对我有用:

$user = Auth::user();

$key = $request->input('key');
$extra_column = $request->input('extra_column');

    if (count($user->groups()->where('key', $key)->where('extra_column', $extra_column)->first())){

        // fails (data exists already)

    }else{

        //update pivot
$user->groups()->updateExistingPivot($key, ['extra_column' => $extra_column]);

    }