Laravel - 关系列等于何处?

时间:2017-03-29 23:20:42

标签: php mysql laravel shoes

我试图获取所有记录,其中名为stats()的玩家关系的列值为某事。我通常会为玩家表做::where('column_name' 'column_value'),但我怎么能得到::关系表的列等于什么?

Player::where('column_name', 'column_value')->get();

但我想查看关系表中的一列?

public function roleplay()
{
    return $this->hasOne('App\Database\Frontend\User\Roleplay', 'user_id', 'id');
}

2 个答案:

答案 0 :(得分:18)

这将根据相关表格

过滤播放器
Player::whereHas("roleplay", function($q){
   $q->where("column_name","=","value");
})->get();

答案 1 :(得分:0)

您可以尝试以下代码:

Player::with(['roleplay' => function ($query) {
      $query->where('column_name', 'value');
}])->get();