【发布时间】:2021-07-13 00:20:45
【问题描述】:
我有 2 个表:产品和订单。按顺序,我想通过产品表得到价格。
表格
<div id="TextBoxDiv1">
<input type="hidden" value="{{ Auth::user()->name }}" name="order_by">
<input class="text email" type="text" name="quantity[]"
placeholder="Quantity" required="" id="textbox1"
style="width: 230px; height: 41px; margin-top: 10px">
<div class="form-group row">
<div class="col-md-9">
<select class="select2 form-select shadow-none"
style="width: 230px; height: 41px; margin-top: 10px"
name="product[]">
<option>Select Product</option>
@foreach ($products as $product)
<option value="{{ $product->name }}">{{ $product->name }}</option>
@endforeach
</select>
</div>
</div>
</div>
下面是我的 OrderController。我不明白如何获取价格,因为我们从表单中获取的值在数组中,我想将其转换为字符串,通过该名称,我希望通过 products 表获取价格。
public function store(Request $request)
{
$products = Product::all();
$request->validate([
'order_by' => 'required',
'product' => 'required',
'quantity' => 'required',
'status' => 'sometimes',
'price' => 'sometimes',
]);
$order = new Order();
$order->product = implode(',', $request->product);
$order->quantity = implode(',', $request->quantity);
// $order->price = ;
$order->order_by = $request->order_by;
$order->status = $request->status;
$order->save();
return redirect()->route('user/pending',
compact('products'))->withSuccess('Done');
}
订单模式
use HasFactory;
protected $table = 'orders';
protected $fillable = [
'order_by',
'product',
'quantity',
];
产品型号
use HasFactory;
protected $table = 'products';
protected $fillable = [
'name',
'brand',
'price',
'detail',
'image',
];
【问题讨论】:
-
请不要转发您的问题。相反,将它们改进为负责任的。您的编辑会将问题放在前面,并且会再次显示