我想更新 t_bapr
有条件 t_prbk
和 t_item
但它不能正常工作。
数据是这样的。
{
"type": "success",
"message": "Data updated successfully.",
"data": [
{
"t_prbk": "SB1900003",
"t_item": " FCLADM31482BZ1700000",
"t_bapr": "60.0"
},
{
"t_prbk": "SB1900003",
"t_item": " FCLAHM43312K64N10100",
"t_bapr": "60.0"
},
{
"t_prbk": "SB1900003",
"t_item": " FCLAHM43312K64N10100",
"t_bapr": "60.0"
},
{
"t_prbk": "SB1900003",
"t_item": " FCLAHM-4331A-K2W -N002-IN",
"t_bapr": "60.0"
}
]
}
然后这是控制器。
public function priceBookUpdate(Request $request, $t_prbk, $t_item)
{
$request->validate([
't_bapr' => 'integer'
]);
$price_book = PriceBookTtdpcg031::where('t_prbk', $t_prbk)
->where('t_item', $t_item)
->firstOrFail();
$price_book->t_bapr = $request->t_bapr;
$price_book->save();
$data = PriceBookTtdpcg031::select('t_prbk', 't_item', 't_bapr')
->where('t_prbk', 'SB1900003')
->get();
return response()->json([
'type' => 'success',
'message' => trans('message.update_success'),
'data' => $data
], 201);
}
Route::post('/sales-price-update-pb/{t_prbk}/{t_item}', 'SalesPriceController@priceBookUpdate');
当我点击更新时,我希望 t_bapr
栏的值要根据 t_prbk
和 t_item
我指定的参数。但使用的参数只是 t_prbk
.
我使用laravel 6.0和SQL Server。
请按以下方式尝试。
$price_book = PriceBookTtdpcg031::where('t_prbk', $t_prbk)
->whereRaw('TRIM(t_item) = ?', [trim($t_item)])
->firstOrFail();