请问我确实有一个问题,我想要一些多输入字段,这将保存到数据库但在保存之前我想去其他表检查数量和一些其他功能,以便如果其中一个请求字段失败的循环不符合要求它会拉回错误响应,例如项目5的数量不足以发送
这是当前发送到db
的代码 public function store(Request $request, $id){
$data = $request->except('_token');
$productName = count($data['productName']);
for($i=0; $i < $productName; $i++){
$stt = new StockTransferTransaction;
$stt->stock_id = $data['productName'][$i];
$stt->rate = $data['rate'][$i];
$stt->quantity = $data['quantity'][$i];
$stt->valuation = $data['totalValue'][$i];
$stt->stock_transfer_id = $id;
// this is where i would love to perform the quantity checks before saving
$stock = Stock::where('id', $productName)->get();
dd($stock);
$stt->save();
}
}
答案 0 :(得分:0)
首先,您使用计数:
$productName = count($data['productName']);
作为 id
$stock = Stock::where('id', $productName)->get();
您可以使用以下支票:
for($i=0; $i < $productName; $i++){
$stock = Stock::find(/*StockID*/);
//dd($stock);
if ($stock) {
//Error message
}
else {
$stt = new StockTransferTransaction;
$stt->stock_id = $data['productName'][$i];
$stt->rate = $data['rate'][$i];
$stt->quantity = $data['quantity'][$i];
$stt->valuation = $data['totalValue'][$i];
$stt->stock_transfer_id = $id;
$stt->save();
}
}