gpt4 book ai didi

php - Laravel 5.1 - 使用 where Eloquent 查询数据透视表的字段

转载 作者:行者123 更新时间:2023-11-28 23:37:59 24 4
gpt4 key购买 nike

我想知道如何在多对多关系中查询数据透视表中的字段。

假设我们有这样的关系:

public function acciones(){
return $this->belongsToMany('App\Accion', 'inter_clientes_acciones', 'id_cliente', 'id_accion')->withPivot('valoracion', 'asistencia');
}

public function clientes(){
return $this->belongsToMany('App\Cliente', 'inter_clientes_acciones', 'id_accion', 'id_cliente')->withPivot('valoracion', 'asistencia');
}

我必须得到的是 bool 字段 asistencia 值为 true 的客户端数量。

我试过做这样的事情:

$clients = Cliente::findOrFail($id);
$number = $clients->acciones()->pivot->where('asistencia','=', true)->count();

但是我有一个错误。明显地。

有没有一种 Eloquent 方法来获得这个计数??

最佳答案

你可以试试这个。

$number = Cliente::whereHas('acciones', function($q) {
$q->where('asistencia', '=', true);
})->count();

关于php - Laravel 5.1 - 使用 where Eloquent 查询数据透视表的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35199849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com