我正在构建Laravel应用程序,现在我添加了两个表,即“ employees”和“ employees_category”表。两者都有一个“订单”列,因此我可以设置类别和员工在网站上的显示顺序。
添加员工时,可以将其分配到类别。到目前为止,到目前为止,我可以按设置顺序显示员工,但不能显示类别。
这是我到目前为止所拥有的:
我的EmployeesController:
public function index()
{
$employees = Employee::all()->groupBy('category');
return view('app.employee.index', compact('employees'));
}
在我的刀片视图中:
@foreach ($employees as $category => $workers)
<div class="col text-center mb-6">
<h2>{{ $category }}</h2>
</div>
<div class="row px-4 px-xl-10">
@foreach($workers->sortBy('employee_order') as $worker)
// some content
@endforeach
</div>
@endforeach
这会按订单号而不是类别对员工进行正确排序,我该如何实现?
答案 0 :(得分:1)
为什么不精确查询您想要的视图
public function index()
{
$categories = Category::with('employees')->get();
return view('app.employee.index', compact('categories'));
}
并在视图中:(请注意,您想要的是as $category => $workers
)
@foreach ($categories as $category)
<div class="col text-center mb-6">
<h2>{{ $category }}</h2>
</div>
<div class="row px-4 px-xl-10">
@foreach($category->employees->sortBy('employee_order') as $worker)
// some content
@endforeach
</div>
@endforeach
好消息是,您现在可以对分类进行分页