我正在 Laravel 开发订单系统,我在尝试处理订单产品时遇到了问题。
页面如下所示:
每个Product条目代表一个名为Products的表中的项目,其中id,name和price为列。
当我发送表单时,每个QTY输入都有产品ID的名称(对于Cabbage为1,对于Water为3,对于Bread为4)。 像这样的东西(白菜):
$ echo 139506MB | awk '{
ex = index("KMGTPEZY", substr($1, length($1)-1,1)); # from substr($1, length($1))
# ex = substr($1, length($1)-1,1); # uncomment for the unit
val = substr($1, 0, length($1) - 2);
print ex " " val
}'
2 139506
其中一个问题是那些不是页面上的单个输入,我无法从其他地方真正识别它们。
当表单发送时,我想要获取这些值,在数据库中搜索,根据id获取每个产品的名称,并制作一个简单的列表,如:
<input style="width:70px;margin-bottom:9px;" class="qty form-control input-lg" required="required" name="1" type="number" value="">
我要问的是获得上述列表的最佳方式是什么,因为产品将是动态的(删除,添加,修改等)。
最初我想到的是:
Cabbage - 2 qty
Water - 1 qty
Bread - 3 qty
但这样做我不知道数值,我几乎被卡住了。 我感谢任何可以帮助我实现我解释的想法。
谢谢!
答案 0 :(得分:0)
您也可以将数量作为数组发送,因此请将qte输入命名为quantities[]
,然后通过控制器中的索引获取它们:
$product_ids = Input::get('products'); //input name products[]
$quantities = Input::get('quantities'); //input name quantities[]
foreach($product_ids as $index=>$product_id){
$product = Product::find($product_id);
$quantity = $quantities[$index];
echo $product['name'].' : '.$quantity;
}