我的应用程序中有两个MySQL表Laravel,一个称为categories,另一个称为employees。categories-table的结构为:
id
category
order
该employees表还具有称为:
id
category
order
因此,可以说我categories喜欢:顾问,程序员和行政管理,当我在后端创建员工时,可以将新员工分配到以下类别之一。现在,在我的应用程序的前端,我Laravel希望按类别显示雇员,并按给出的顺序显示类别。假设顾问的顺序为2,程序员的顺序为1,管理的顺序为3。
现在,我的控制器如下所示:
use App\Employee;
class EmployeesController extends Controller
{
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('order') as $worker)
// content of the employee
@endforeach
</div>
@endforeach
仅通过使用“雇员”表的类别就可以正确地对雇员进行排序,但是如上所述,我无法按我想要的类别对类别进行排序。
那么,有人可以帮我吗?
编辑
作为示例,我希望输出看起来像这样:
Programmers (since this category has order of 1)
// employees with category "programmers" here
Consultants (2)
// employees with category "consultants" here
Administration (3)
// employees with category "administration" here
蓝山帝景