【发布时间】:2020-08-15 23:51:32
【问题描述】:
在我的 Laravel-5.8 中,我有以下代码:
型号
protected $fillable = [
'id',
'first_name',
'employee_type_id',
'last_name',
];
public function employeetype()
{
return $this->belongsTo('App\Models\Hr\HrEmployeeType','employee_type_id','id');
}
控制器
public function update(UpdateEmployeeRequest $request, $id)
{
if (! Gate::allows('employee_edit')) {
return abort(401);
}
DB::beginTransaction();
try {
$employee = HrEmployee::find($id);
$employee->employee_type_id = $request->employee_type_id;
$employee->first_name = $request->first_name;
$employee->last_name = $request->last_name;
}
$employee->save();
DB::commit();
Session::flash('success', 'Employee is updated successfully');
return redirect()->route('hr.employees.index');
} catch (Exception $exception) {
Log::error($exception);
DB::rollback();
Session::flash('error', 'Action failed! Please try again');
return back();
}
}
查看
<form action="{{route('hr.employees.update', ['id'=>$employee->id])}}" method="post" class="tab-wizard wizard-circle form" enctype="multipart/form-data">
{{ csrf_field() }}
<div class="col-12 col-sm-4">
<div class="form-group">
<label class="control-label"> Other Name:</label>
<input type="text" name="other_name" placeholder="Enter other name here" class="form-control" value="{{old('other_name',$employee->other_name)}}" style="width: 100%;">
</div>
<!-- /.form-group -->
</div>
<!-- /.col -->
<div class="col-12 col-sm-4">
<div class="form-group">
<label class="control-label"> Last Name:<span style="color:red;">*</span></label>
<input type="text" name="last_name" placeholder="Enter last name here" class="form-control" value="{{old('last_name',$employee->last_name)}}" style="width: 100%;">
</div>
<!-- /.form-group -->
</div>
<div class="col-12 col-sm-4">
<div class="form-group">
<label class="control-label"> Employee Type:</label>
<select class="form-control select2bs4" data-placeholder="Choose Employee Type" tabindex="1" name="employee_type_id" style="width: 100%;">
<option value="">Select Employee Type</option>
<option selected >Select Employee Type</option>
@if($employeetypes->count() > 0 )
@foreach($employeetypes as $employeetype)
<option value="{{$employeetype->id}}" @if($employeetype->id == $employee->employee_type_id) selected @endif>{{$employeetype->employee_type_name}}</option>
@endforeach
@endif
</select>
</div>
<!-- /.form-group -->
</div>
<button type="submit" id="button" class="btn btn-primary" hidden>{{ trans('global.update') }}</button>
当我提交编辑/更新表单时,我收到了这个错误:
"SQLSTATE[HY000]: 一般错误: 1366 不正确的整数值: 'Select Employee Type' for column 'employee_type_id' at row 1 (SQL: update
hr_employeessetfirst_name= Jacob,last_name= Brown whereid= 1) ◀"
我该如何解决。
谢谢
【问题讨论】:
标签: laravel