如何使用 "with" 函数从数据透视表中仅获取指定字段

How to fetch only a specified field from pivot with "with" function

我正在使用 Laravel 6.0 anc 我无法弄清楚如何使用 with 预加载从数据透视表 table 中获取指定的字段。

对于我使用的关系

$builder->with('relation_name:field1,field2")

但它不适用于该关系的枢轴。 有什么办法可以做到这一点,或者我必须手动取消设置其他字段吗?

对于关系,关系上的 withPivot() 方法可能是您正在寻找的:

 $builder->with(['relation_name' => function ($query) {
      $query->withPivot('field1')->withPivot('field2');
 }])->get();

您可以组合,但为了清楚起见,这是最简单的。