对不起,是这么愚蠢的问题..
我使用Controller,有很多ORM,我想简化这段代码.
我的控制器
public function news(Request $request)
{
$history = Recruitments_status::where('recruitments_status.status',1)->get();
$history_a = Recruitments_status::where('recruitments_status.status',2)->get();
$history_b = Recruitments_status::where('recruitments_status.status',3)->get();
$history_c = Recruitments_status::where('recruitments_status.status',4)->get();
$history_d = Recruitments_status::where('recruitments_status.status',5)->get();
$history_e = Recruitments_status::where('recruitments_status.status',6)->get();
return view('pl_sidebar/news',[
'history' => $history,
'history_a' => $history_a,
'history_b' => $history_b,
'history_c' => $history_c,
'history_d' => $history_d,
'history_e' => $history_e
]);
}
如何简化这个ORM代码?
解决方法:
您的代码将生成多个查询,这是不好的做法.你可以得到一个集合:
public function news(Request $request)
{
return view('pl_sidebar/news', [
'history' => Recruitments_status::whereIn('status', [1, 2, 3, 4, 5, 6])
]);
}
然后在Blade模板中使用此集合:
@foreach ($history->where('status', 1) as $single)
{{ $single->status }}
{{ $single->id }}
@endforeach
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。