我目前在数据表中显示所有餐馆,但餐馆也可以有分店/特许经营权,所以我也试图在同一张桌子上展示这些。
目前我按如下方式显示:
if ($request->ajax()) {
$restaurant = Restaurant::query()->with('user');
return Datatables::of($restaurant)
->editColumn('name', function ($restaurant) {
return $restaurant->name;
})
->editColumn('user.name', function ($restaurant) { // Owner
return $restaurant->user->name;
})
->editColumn('total_orders', function ($restaurant) {
return $restaurant->total_orders;
})
->make(true);
}
我的关系是餐厅hasMany(Branch::class);
和分行belongsTo(Restaurant::class);
我没有想到一个允许我在同一餐厅数据表中显示所有分支($restaurant->branches->get()
)的解决方案。
任何帮助和提示都会很棒!
答案 0 :(得分:0)
虽然您可以使用查询构建器执行此操作,然后执行多个连接,但我更喜欢这样做。
$restaurant = Restaurant::select('restaurant.name as name, user.name as owner,
restaurant.total_orders as total_orders, branches.*')
->with('user', 'branches');