laravel - Laravel - 生产。错误:未定义的变量:数据
问题描述
在我的 Laravel-5.8 中,我有以下代码:
public $filters = [
"all" => "all",
"logged_in" => "logged in users",
"not_logged_in" => "not logged in users",
];
public function user_logs($id = "")
{
$userCompany = Auth::user()->company_id;
$userEmployee = Auth::user()->employee_id;
$userId = Auth::user()->id;
$employeecode = Auth::user()->employee_code;
if ($id == 'all') {
$data = User::where('hr_status', 0)->where('company_id', $userCompany)->orderBy('last_login_at', 'desc')->get();
}
elseif ($id == "") {
$data = User::where('hr_status', 0)->where('company_id', $userCompany)->where('active', 0)->orderBy('last_login_at', 'desc')->get();
}
elseif ($id == "logged_in") {
$data = User::where('last_login_at', '>', today()->subDays(30))
->where('hr_status', 0)
->where('company_id', $userCompany)
->orderBy('last_login_at', 'desc')
->get();
}
elseif ($id == "not_logged_in") {
$data = User::where('last_login_at', '<', today()->subDays(30))
->orWhereNull('last_login_at')
->where('hr_status', 0)
->where('company_id', $userCompany)
->orderBy('last_login_at', 'desc')
->get();
}
$chart_settings = [
'chart_title' => 'Users By Months',
'chart_type' => 'line',
'report_type' => 'group_by_date',
'model' => 'App\\User',
'group_by_field' => 'last_login_at',
'group_by_period' => 'month',
'aggregate_function' => 'count',
'filter_field' => 'last_login_at',
'column_class' => 'col-md-12',
'entries_number' => '5',
];
$chart = new LaravelChart($chart_settings);
return view('report.report_user_login_logs.user_logs', compact( 'chart'))
->with('employees', $data)
->with('filters', $this->filters)
->with('selectedFilter', $id);
}
查看刀片:
查看/报告/report_user_login_logs/index.blade.php
<div class="form-group">
<select class="form-control" id="filter">
<option value="select">Select Search Criteria</option>
@foreach($filters as $filter)
<option value="{{$filter}}" @if($filter==$selectedFilter) selected @endif>{{ucfirst(trans($filter))}}</option>
@endforeach
</select>
</div>
<tbody>
@foreach($employees as $key => $employee)
<tr>
<td>
{{$employee->employee_code}}
</td>
<td>
{{$employee->first_name}} {{$employee->last_name}}
</td>
<td>
{{$employee->email}}
</td>
<td>
{{$employee->last_login_at}}
</td>
</tr>
@endforeach
</tbody>
<script type="text/javascript">
$(document).ready(function () {
$("#filter").change(function(e){
if ($(this).val()=== "select" ){
var url = "{{route('report.report_user_login_logs.user_logs')}}/"
}
else{
var url = "{{route('report.report_user_login_logs.user_logs')}}/" + $(this).val();
}
if (url) {
window.location = url;
}
return false;
});
});
</script>
路由/web.php
Route::group(['prefix' => 'report', 'as' => 'report.', 'namespace' => 'Report', 'middleware' => ['auth']], function () {
Route::get('report_user_login_logs/user_logs/{id?}', 'ReportUserLoginLogsController@user_logs')->name('report_user_login_logs.user_logs');
});
我使用下拉列表作为过滤器来显示表格上的数据。doropdown onchange:
<select class="form-control" id="filter">
<option value="select">Select Search Criteria</option>
@foreach($filters as $filter)
<option value="{{$filter}}" @if($filter==$selectedFilter) selected @endif>{{ucfirst(trans($filter))}}</option>
@endforeach
</select>
当我选择“全部”时,它可以工作。
但是当我选择
"logged in users" as in "logged_in" => "logged in users",
或者
"not logged in users" "not_logged_in" => "not logged in users",
我收到了这个错误:
生产。错误:未定义的变量:数据
我该如何解决?
谢谢
解决方案
推荐阅读
- c++ - 这是一个好习惯:将字符串转换为整数?
- azure-devops - 如何从 Azure DevOps Pipeline 查询 Azure SQL DB?
- flutter - 按下时如何在颤动中更改图像?
- c# - Newtonsoft.JSON 忽略父属性但序列化子属性
- ios - +Subproject 提交是什么?
- wordpress - 在 WooCommerce 单一产品页面描述上添加“阅读更多”按钮
- python - 范围内缺少值,因为没有人选择选项 5,因此它在索引 5 处破坏了我的 for 循环
- fonts - 使 SwiftUI TextField 足够大以容纳字符串
- python - 为 Python 程序设置解释器
- git - 如何每秒 Git 拉取和显示状态