Creating default object from empty value
Controller
public function updateLabor(Request $request)
{
$claims = Claim::where('id', $request->id)->first();
$claim_decode = json_decode($claims->dynamodb_tabels_data,1);
$data_claim = [];
foreach($claim_decode['truck_estimating_result'] as $k=>$item){
array_push($data_claim,$item);
$data_claim[0][$k]->part_type->S = $request->part_type;
$data_claim[0][$k]->labor_hr->N = $request->labor_hr;
$data_claim[0][$k]->labor_type->S = $request->labor_type;
$data_claim[0][$k]->paint_labor->N = $request->paint_labor;
$data_claim[0][$k]->price->N = $request->price;
$data_claim[0][$k]->part_taxed->N = $request->part_taxed;
$data_claim[0][$k]->id->N = $request->id;
}
dd($data_claim[0][1]);
$result = $claims->update(['dynamodb_tabels_data'=>json_encode($claim_decode)]);
if($result) {
return response()->json([
'data_claim' => $data_claim,
]);
}
}
edit.blade view
$('#save-labor').on('click',function(){
a = confirm("Are you sure?");
var url = window.location.pathname;
var id = url.substring(url.lastIndexOf('/') + 1);
var data = [];
$("#truck_estimating_table tr").each(function(){
if($("#part_type_select", this).length > 0){
data[$(this).attr('rowid')] = {
"part_type" : $("select[name='part_type_select']", this).val(),
"labor_type" : $("select[name='labor_type_select']", this).val(),
"labor_hr": $("input[name='labor_hr']", this).val(),
"paint_labor": $("input[name='paint_labor']", this).val(),
"price": $("input[name='price']", this).val(),
"part_taxed": $("input[name='part_taxed_db']", this).is(":checked"),
'id': $(this).attr('rowid'),
}
}
});
if(a != '' && data.length > 0){
$.ajax({
async: false,
type: "POST",
url: "{{route('claim.updateLabor')}}",
headers: {
'X-CSRF-Token' : $("[name='_token']").val()
},
data: {
'data': data,
'id': id,
},
success: function(response) {
// Toast message
}
})
});
I'm trying to update the values that is inside the table with ajax and laravel but I get this error when I save "Creating default object from empty value". I don't know what is the problem. Please help me.