我有車狀態欄的車表,有「可用」和「故障」。 我也有車隊CRUD,一旦我添加車隊,我想只顯示「可用」狀態的汽車。我應該添加什麼?獲取具體的價值Laravel
這裏是我的車隊控制器代碼:
<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use App\Models\Fleet;
use App\Models\Car;
use App\Models\Attendance;
use App\Helpers\Enums\FleetStatus;
use App\Models\AttendanceDetail;
use Illuminate\Http\Request;
use Yajra\Datatables\Datatables;
use App\Http\Controllers\Base\MasterController;
use Route;
use Illuminate\View\View;
class FleetController extends MasterController
{
protected $detailView = 'fleet.show';
protected $indexView = 'fleet.index';
protected $createView = 'fleet.form';
protected $editView = 'fleet.form';
protected $routeBindModel = 'fleet'; //Route Model Binding name in RouteServiceProvider
protected $redirectPageWhenFormSuccess = 'fleet.index'; //Route Name
protected $title = 'Fleet';
public function save(Request $request, $obj = null) {
if (!$obj) {
$obj = new Fleet;
}
return $this->saveHandler($request, $obj);
}
//Must have this method if need datatable;
public function datatableBuilder($obj = null) {
return Fleet::query();
}
public function makeDatatable($obj) {
return Datatables::of($obj)
->addColumn('action', function ($model) {
return $this->makeActionButtonsForDatatable($model);
})
->editColumn('status', function($model){
return FleetStatus::getString($model->status);
})
->make(true);
}
public function render(View $view, $route = null, $obj = null, $method = 'POST') {
$statusList = FleetStatus::getArray();
$carStatusList = Car::pluck('plate_no', 'id');
$attendanceList = Attendance::pluck('driver_id', 'id');
$workingHourList = Attendance::pluck('working_hours', 'id');
$view->with(compact('statusList', 'carStatusList', 'attendanceList', 'workingHourList'));
return parent::render($view, $route, $obj, $method);
}
}
這裏是我添加表單代碼:
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<label>Car </label>
{!! Form::select('car_id', $carStatusList, null, array('class' => 'form-control')) !!}
</div>
</div>
@Hi感謝隊友。 –
你知道如何顯示驅動程序名稱而不是ID嗎? driver_id鏈接到考勤 - > attendace_detaill->車隊 –
您需要在駕駛模型中添加汽車和駕駛員之間的關係。add public function car(){return $ this-> belongsTo('Models \ Car'); }並在汽車模型中添加函數driver(){return $ this-> hasMany('Models \ Driver'); }假設你在駕駛員和汽車之間有一對多的關係,這將工作。然後去$ car-> driver-> name;您可以將此應用到任何關係更多信息https://laravel.com/docs/5.3/eloquent-relationships – Indra