Laravel-如何为索引视图自定义数据表
我正在为我的web应用程序使用Laravel-5.8。在其中,我使用datatable制作了一个索引视图刀片,它是从这两个动态输入表派生的:Laravel-如何为索引视图自定义数据表,laravel,datatable,Laravel,Datatable,我正在为我的web应用程序使用Laravel-5.8。在其中,我使用datatable制作了一个索引视图刀片,它是从这两个动态输入表派生的: class AppraisalGoal extends Model { protected $table = 'appraisal_goals'; protected $primaryKey = 'id'; protected $fillable = [ 'goal_type_id',
class AppraisalGoal extends Model
{
protected $table = 'appraisal_goals';
protected $primaryKey = 'id';
protected $fillable = [
'goal_type_id',
'appraisal_identity_id',
'employee_id',
'company_id',
'is_published',
'is_approved',
'weighted_score',
'employee_comment',
'line_manager_comment',
'goal_title',
'appraisal_doc',
'appraisal_start_date',
'appraisal_end_date',
];
public function goaltype()
{
return $this->belongsTo('App\Models\Appraisal\AppraisalGoalType','goal_type_id');
}
public function employee()
{
return $this->belongsTo('App\Models\Hr\HrEmployee','employee_id');
}
public function appraisalidentity()
{
return $this->belongsTo('App\Models\Appraisal\AppraisalIdentity','appraisal_identity_id');
}
public function appraisalgoaldetail(){
return $this->hasMany('App\Models\Appraisal\AppraisalGoalDetail');
}
}
class AppraisalGoalDetail extends Model
{
protected $table = 'appraisal_goal_details';
protected $fillable = [
'name',
'company_id',
'appraisal_goal_id',
'kpi_description',
'appraisal_doc',
'activity',
'start_date',
'end_date',
];
public function appraisalgoal()
{
return $this->belongsTo('App\Models\Appraisal\AppraisalGoal');
}
}
控制器
public function index()
{
$userEmployee = Auth::user()->employee_id;
$goals = AppraisalGoal::where('employee_id', $userEmployee)->get();
return view('appraisal.appraisal_goals.index')->with('goals', $goals);
}
目前,我有以下索引视图刀片:
其来源是:
<div class="card-body">
<div class="table-responsive">
<table class=" table table-bordered table-striped table-hover datatable">
<thead>
<tr>
<th width="10">
#
</th>
<th>
Goal Type
</th>
<th>
Goal Title
</th>
<th>
Goal Description
</th>
<th>
Weight
</th>
<th>
Published
</th>
<th>
Approved
</th>
<th>
Line Manager's Comments
</th>
<th>
Start Date
</th>
<th>
End Date
</th>
<th>
Date Added
</th>
<th>
</th>
</tr>
</thead>
<tbody>
@foreach($goals as $key => $goal)
<td>
{{$key+1}}
</td>
<td>
{{$goal->goaltype->name ?? '' }}
</td>
<td>
{{$goal->goal_title ?? '' }}
</td>
<td>
{{$goal->goal_description ?? '' }}
</td>
<td>
{{$goal->weighted_score ?? '' }}
</td>
<td>
@if ($goal->is_published)
<span class="badge bg-success">Published</span>
@else
<span class="badge bg-danger">Pending</span>
</a>
@endif
</td>
<td>
@if ($goal->is_approved)
<span class="badge bg-success" >Approved</span>
@else
<span class="badge bg-danger">Pending</span>
@endif
</td>
<td>
{{$goal->line_manager_comment ?? '' }}
</td>
<td>
{{Carbon\Carbon::parse($goal->start_date)->format('d-m-Y') ?? '' }}
</td>
<td>
{{Carbon\Carbon::parse($goal->end_date)->format('d-m-Y') ?? '' }}
</td>
<td>
{{Carbon\Carbon::parse($goal->created_at)->format('d-m-Y') ?? '' }}
</td>
<td>
@if($goal->is_published == 0)
<a class="btn btn-xs btn-success" data-toggle="modal" data-target="#confirm-publish{{ $goal->id }}" data-original-title="Close">
<span style="color:white;">Publish</span>
</a>
@else
<span class="badge bg-danger">Published</span>
@endif
@can('appraisal_goal_show')
<a class="btn btn-xs btn-primary" href="{{ route('appraisal.appraisal_goals.show', $goal->id) }}">
{{ trans('global.view') }}
</a>
@endcan
@can('appraisal_goal_edit')
<a class="btn btn-xs btn-info" href="{{ route('appraisal.appraisal_goals.edit', ['id'=>$goal->id]) }}">
{{ trans('global.edit') }}
</a>
@endcan
@can('appraisal_goal_delete')
<a class="btn btn-xs btn-danger" data-toggle="modal" data-target="#confirm-delete{{ $goal->id }}" data-original-title="Close">
<span style="color:white;">{{ trans('global.delete') }}</span>
</a>
@endcan
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
#
目标类型
进球标题
目标描述
重量
出版
经核准的
直线经理的意见
开始日期
结束日期
添加日期
@foreach($key=>$goal的目标)
{{$key+1}}
{{$goal->goaltype->name???'}
{{$goal->goal_title???'}
{{$goal->goal_description???'}
{{$goal->weighted_分数???'}
@如果($goal->已发布)
出版
@否则
悬而未决的
@恩迪夫
@如果($goal->已批准)
经核准的
@否则
悬而未决的
@恩迪夫
{{$goal->line_manager_comment???'}
{{Carbon\Carbon::parse($goal->start_date)->格式('d-m-Y')??'''}
{{Carbon\Carbon::parse($goal->end_date)->格式('d-m-Y')??'''}
{{Carbon\Carbon::parse($goal->created_at)->格式('d-m-Y')??''}
@如果($goal->is_published==0)
@恩德坎
@可以(‘评估\目标\编辑’)
@恩德坎
@can(‘评估\目标\删除’)
{{trans('global.delete')}
@恩德坎
@endforeach
数据表脚本
$(函数(){
让copyButtonTrans='{{trans('global.datatables.copy')}'
让csvbuttonrans='{{trans('global.datatables.csv')}'
让excelButtonTrans='{{trans('global.datatables.excel')}'
让pdfButtonTrans='{{trans('global.datatables.pdf')}'
让printButtonTrans='{{trans('global.datatables.print')}'
让colvisButtonTrans='{{trans('global.datatables.colvis')}'
让语言={
"恩":"https://cdn.datatables.net/plug-ins/1.10.19/i18n/English.json'
};
$.extend(true,$.fn.dataTable.Buttons.defaults.dom.button,{className:'btn'})
$.extend(true,$.fn.dataTable.defaults{
语言:{
url:语言。{{app()->getLocale()}
},
columnDefs:[
{
可订购:错误,
可搜索:false,
目标:-1
}],
选择:{
样式:“多重+移位”,
选择器:“td:第一个孩子”
},
订单:[],
是的,
页长:100,
dom:'lBfrtip',
按钮:[
]
});
$.fn.dataTable.ext.classes.sPageButton='';
});
请看一下我在这篇文章中的答案,它应该会让你了解如何使用行间距和列间距