2017-08-29 52 views
0
\DB::table('orders')->where('id', $orderid)->update(['price' => \DB::raw('price' - $price)]); 

在DB的價格列是十進制的,當我嘗試在數據庫上減去一個值,我得到這個錯誤說,它不能轉換爲int對象無法轉換成int [LARAVEL]

+0

是什麼'$ price' u能張貼的聲明和賦值 – jaysingkar

+0

$價格= \ DB: :table('order_products') - > where('id',$ orderid_prod) - > pluck('price'); – DEMONIOalpha

+0

'$ preco = \ DB :: table('pedido_produtos') - > where('id',$ pedidoid_prod) - > pluck('preco'); '最有可能給你回數組或對象。運行一個'dd($ preco)',看看你得到了什麼。如果它是一個數組或對象,只需將該值拉出即可。 –

回答

0

如果你使用dd($price)你會看到它是集合。 pluck()返回所有值的數組。因此,使用$價格[0],而不是$price

或者,您可以更改價格的賦值,因爲波紋管

$price= \DB::table('order_products')->where('id', $orderid_prod)->first()->price;