我做了一个图表,但是当我想显示数据的时候出现了一个问题,为什么它被压缩了?
示例代码控制器:
if(Auth::user()->hasRole('Super Admin')) {
$user = User::where('id', Auth::user()->id)->first();
$jumlah_user = User::orderBy('id', 'ASC')->get()->count();
$data = Verifikasi_tte::join('surat_ttes', 'surat_ttes.id', '=', 'verifikasi_ttes.surat_tte_id')
->join('users', 'users.id', '=', 'surat_ttes.user_id')
->join('jenis_surat_ttes', 'jenis_surat_ttes.id', '=', 'surat_ttes.jenis_surat_tte_id')
->select('surat_ttes.id','surat_ttes.klasifikasi','surat_ttes.no_surat','surat_ttes.tgl_surat','surat_ttes.created_at',
'jenis_surat_ttes.nama_jenis_surat','users.name','users.opd_id','verifikasi_ttes.status')
->get()->groupBy(function($data){
return Carbon::parse($data->created_at)->format('M');
});
$months=[];
$monthCount=[];
foreach($data as $month => $values){
$months[]=$month;
$monthCount[]=count($values);
}
return view('dashboard.admins', compact('user','jumlah_user', ['data'=>$data,'months'=>$months,'monthCount'=>$monthCount] ));
}
如果转储中有数据转储,那么为什么compact部分要求sep变量呢?
示例JS图表:
<script type="text/javascript">
var _ydata=JSON.parse('{!! json_encode($months) !!}');
var _xdata=JSON.parse('{!! json_encode($monthCount) !!}');
</script>
2条答案
按热度按时间6xfqseft1#
下面是你应该做的。不要使用
compact
,因为它不能有一个数组作为参数。相反,你应该把你所有的数据作为一个数组传递,当在你的视图文件中访问它时,这个数组被分解成不同的变量。将您的代码调整为:
现在在你的视图文件中,你可以像这样引用每个变量:
{{ $user }}
{{ $months }}
{{ $jumlah_user }}
等等qyzbxkaa2#
您不能在compact方法中传递带有变量数组的单个变量。您可以在此处执行两个步骤来将每个变量传递到视图。
方法1 =〉您可以在compact中以逗号分隔的列表形式传递每个变量,并通过变量名在前端获取
方法2 =〉您可以将单个变量作为不同变量的数组进行传递,如
并通过访问变量名在前端正常使用