在通过数据透视表查询时,想要获取所选列。以下是我的情景。 我有3张桌子,
关系详情如下。
class Coupon extends Eloquent {
public function cities(){
return $this->belongsToMany('City', 'coupon_cities', 'coupon_id', 'city_id');
}
}
当我查询
时Coupon::with('cities')
它返回优惠券行的每个条目的城市表的所有列的数组
答案 0 :(得分:0)
唯一的方法就是:
$coupon = Coupon->first();
$coupon->cities()->get([your columns here]);
通常你会像下面这样做:
Coupon::with(['cities' => function ($q)
{
$q->select('column', 'column2' ...);
}
然而,它不适用于belongsToMany
关系 - > https://github.com/laravel/framework/pull/4440