在 Laravel 中传递身份验证的数组(不是对象)



我在传递数组时遇到了一些问题,请给我一些建议,以便我解决这个问题。

这是我的控制器:

$keluhan_list=DB::table('keluhans')
->select(DB::raw('id,produk,username,masalah,id_departemen'))
->where('status','=','Proses')->get();
return view('layanankonsumen.lihattindaklanjut',compact('keluhan_list');

这是我的Blade视图的一部分:

@if (Auth::check() && (Auth::user()->level == 'MR' || Auth::user()->level == 'PDD' || Auth::user()->id_departemen ==' @foreach ($keluhan_list as $keluhan) {{$keluhan->id_departemen}} @endforeach' ))

这不是错误,但不是通过身份验证。当我尝试用Auth::user()->id_departemen == '10'替换时,它正在工作。

返回视图行中的一个错误

$keluhan_list=DB::table('keluhans')
->select(DB::raw('id,produk,username,masalah,id_departemen'))
->where('status','=','Proses')->get();
return view('layanankonsumen.lihattindaklanjut',compact('keluhan_list'));// add one more braces before semicolon

首先在边栏选项卡中添加此行

@foreach ($keluhan_list as $keluhan) 
   <?php $id_dept[] = $keluhan->id_departemen; ?>
@endforeach

然后

@if (Auth::check() && (Auth::user()->level == 'MR' || Auth::user()->level == 'PDD' || in_array(Auth::user()->id_departemen,$id_dept) ))

使用 in_array()

检查数组中是否存在值

@if (.... || in_array(Auth::user()->id_departemen, array_column($keluhan_list, 'id_departemen'))

最新更新