我被卡住了。我成功创建了一个表单,可以将多个行添加到数据库中,但我不知道如何在需要使用product_code作为ID时同时更新它们。
这是表1(产品)的结构:
id | product_name | product_code
1 | Name1 | 101
2 | Name2 | 102
3 | Name3 | 103
4 | Name4 | 104
这是表2(products_ing)的结构:
这是编辑功能:id | product_code | ing_name | ing_weight 1 | 101 | INGName1 | 110 2 | 101 | INGName2 | 10 3 | 101 | INGName3 | 54 4 | 101 | INGName4 | 248
public function post_edit($id = null)
{
if(Input::get('submit'))
{
// ID
if($id !== null)
{
$id = trim(filter_var($id, FILTER_SANITIZE_NUMBER_INT));
}
$input = Input::all();
$validation = Validator::make($input);
else
{
foreach ($input as $key => $value)
{
$input[$key] = ($value !== '') ? trim(filter_var($value, FILTER_SANITIZE_STRING)) : null;
}
try
{
DB::table('products')
->whereIn($id)
->update(array(
'product_name' => $items['product_name'],
'product_code' => $items['product_code']
));
}
}
return $this->get_edit($id);
}
我只能通过id编辑“产品”表中的*product_name*和product_code。但是我正在尝试使用相同的product_code从数据库更新多行记录,它将作为ID使用。我在Google图像上找到了一张很好的图片,解释了我想要用Laravel做的事情: 图片链接。是否有解决方案?谢谢!