在 blade 视图 laravel 中使用多个查询

Use multiple queries in blade view laravel

Laravel 还很陌生,正在尝试弄清来龙去脉。 如果我编写一个主查询来选择 table 中的所有内容,我可以在从 table.

中选择列和行时编写单独的查询吗

示例:

主查询:

public function allTickets(){
$tickets = DB::table('tickets')->get();
return view('admin.index',compact('tickets'));

在我看来:

//THIS WORKS. It gives me a count of all open and closed tickets
{{$tickets->where('status', '=', 'OPEN')->Count()}}
{{$tickets->where('status', '=', 'CLOSED')->Count()}}

但是这不起作用...

Error: Call to a member function where() on string (View: ...

@foreach ($tickets as $ts)
{{$ts->subject->where('status', '=', 'OPEN')}}
@endforeach

@foreach ($tickets as $ts)
{{$ts->subject->where('status', '=', 'CLOSED')}}
@endforeach

有没有一种方法可以使用一个主查询来显示所有打开和关闭的工单主题,或者我是否需要在我的控制器中编写多个查询来实现这一点?

您可以通过简单的解决方案来做到这一点。 先写一个再写一个if语句

@foreach ($tickets as $ts)
  @if($ts->status == 'OPEN')
     {{$ts->subject}}
  @endif
@endforeach

@foreach ($tickets as $ts)
  @if($ts->status == 'CLOSED')
    {{ $ts->subject }}
  @endif
@endforeach